Google App Engine Vs. ??

blov · · 523 次点击    
这是一个分享于 的资源,其中的信息可能已经有所发展或是发生改变。
<p>As far as Go websites go, does anyone host on GAE? If not, anywhere else? It looks like they&#39;re a pretty fantastic service. I see a lot of posts bashing them from years ago but nothing recent.</p> <hr/>**评论:**<br/><br/>Ploobers: <pre><p>GAE is overall fantastic. Super fast deployments, integrated logging, metrics, etc. It&#39;s not great for CPU intensive / long running tasks, but those are pretty easy to move over to Managed VMs. We went through a decent chunk of the sad times, but I&#39;d recommend it to anyone now.</p></pre>natdm: <pre><p>Nice. Thanks!!</p></pre>christopherhesse: <pre><p>GAE is really nice for most applications and has a well-made Go library. The datastore works pretty well with Go, and having everything integrated and ready to go is very helpful. The downsides that people are likely to encounter are:</p> <p>1) No native socket access. This means you have to use the socket API (which is particularly annoying in Go) and/or urlfetch (an okay service, but mildly annoying). This is fixed by Managed VMs, but those are still kinda beta and the deploy times are on the long side.</p> <p>2) Goroutines, one of the coolest feature of Go, are a bit less useful because a goroutine cannot outlive the request that spawned it. For doing stuff in parallel, you can use goroutines. For doing stuff totally asynchronously, you&#39;ll have to use the taskqueue.</p> <p>Once Managed VMs are out of Beta, I expect it will be even better. The plus side is that porting from regular Appengine to Managed VMs is basically no effort at all.</p></pre>natdm: <pre><p>Great write up. Thanks. So it sounds like, for hosting websites that may end up requiring a small db, GAE sounds alright for it.. For now at least.</p></pre>boompleetz: <pre><p>I started using it recently, and it&#39;s pretty great. There was a hiccup with their yaml configuration file not working at all with the gorilla router for static directories, but 2 lines of code gets around it.</p></pre>anoland: <pre><p>What is the fix?</p></pre>boompleetz: <pre><p>the way to get static assets (e.g. css) to load with gorilla, given &#39;app/styles&#39; directory:</p> <pre><code>s := http.StripPrefix(&#34;/styles/&#34;, http.FileServer(http.Dir(&#34;./styles/&#34;))) r.PathPrefix(&#34;/styles/&#34;).Handler(s) </code></pre></pre>boompleetz: <pre><p>where r := mux.NewRouter() </p></pre>coredump777: <pre><p>I like heroku for simple apps. Tried GAE but there was a lot of things to learn how to manage. I guess that if you already know how to deal with google cloud or are into learning it, GAE must be better.</p></pre>3zcurdia: <pre><p>I agree heroku was easy and faster to configure</p></pre>FrenchDonkey: <pre><p>But a lot more than expensive !</p></pre>faaace: <pre><p>My one gripe with heroku is that it requires godep &amp; butchering the typical go folder structure in your repo. Still much better than GAE imho though.</p></pre>natdm: <pre><p>How so? Reading up on it and I haven&#39;t spotted either of those quirks yet. Heroku sounds intriguing. I like Postgres and may also have node.js sites. </p></pre>coredump777: <pre><p>Eh, I don&#39;t think it butchers anything. The only thing they require is Godeps, but latest godeps with go 1.5/1.6 uses the <code>vendor</code> folder (instead of it&#39;s weird <code>_workspace</code>). </p> <p>Heroku config with variables is pretty nifty, and deploy using git branches is veeery smart. Also they are pretty quick on supporting new versions.</p></pre>dahlma: <pre><p>One thing I&#39;ve noticed with the new version of golang is when I run &#39;godep save&#39; then everything is referenced in &#39;vendor&#39; which is kind of a pain, because the logic of my application is in a separate library so every time I have to push an update I have to remove the Godep and vendor directories.</p></pre>coredump777: <pre><p>I wonder if it would work for you to link the <code>vendor/your-library</code> to the <code>src/your-library</code> while you are developing.</p> <p>EDIT: You can just create a bash script that does that for you too, update godeps then do the rest of the things.</p></pre>dahlma: <pre><p>Yeah j need to write a bash script. It would be interesting to set up a symlink though, I&#39;ll have to try that</p></pre>zemirco: <pre><p>I use Digital Ocean with docker-compose to manage my app, database, redis and nginx.</p></pre>natdm: <pre><p>I&#39;ve heard of all these. I&#39;ll have to take a peek.</p></pre>ChristophBerger: <pre><p>This might not be the answer you are seeking, but since you specifically ask about Websites (and not Webapps): If you are not planning for sophisticated features that require (custom) server-side logic, consider a static site generator like [Hugo](gohugo.io). You then can deploy your site to pretty much any host that has a Web server up and running or that allows you to run your own Web server. This way you would not depend on one specific hoster with proprietary API and infrastructure.</p></pre>natdm: <pre><p>Thanks! Some sites will and some sites won&#39;t. I&#39;d have a variety of sites and would prefer to have them all in the same place. Some would have socket and db access, some may only be static sites.</p></pre>mobiledevguy5554: <pre><p>The thing I love most about GAE is the integrated security. One Yaml setting and only people from my google apps domain can log into the app.</p></pre>gobwas: <pre><p>Hi! I&#39;ve started to use ovh vps and dokku – a mini-heroku on your servers. Have launched two apps in it, and it really awesome and useful combination.</p></pre>alioygur: <pre><p>maybe <a href="https://cloud.google.com/compute/" rel="nofollow">https://cloud.google.com/compute/</a></p></pre>marcelo_rocha: <pre><p>IBM Bluemix has support for Go</p></pre>pqyptixa: <pre><p>I use openshift... and I love it. It&#39;s free, it&#39;s fast, and works great.</p></pre>

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

523 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传