5 ms·
Don't use AppEngine. I migrated Homejoy off of AppEngine in 2014 and I can't recommend the platform for any reason whatsoever. It's slow, expensive, not based
by mattbillenstein 11y ago
Don't use AppEngine. I migrated Homejoy off of AppEngine in 2014 and I can't recommend the platform for any reason whatsoever. It's slow, expensive, not based on OSS, and not particularly stable. Bits of it (urlfetch, search, etc) would go down for hours at a time and you're basically hosed until they fix it.
I think Heroku is usable with a similar level of effort -- and you have a much easier migration path to something else if you're not using Google's proprietary datastore IMO.
- justinblat 11y agoApologies you had a bad experience. There's no doubt the original App Engine had some... quirks. You may want to take a look at Managed VMs. All of the new runtimes are based on Docker images, are entirely extensible, and don't require the use of the original App Engine APIs: https://cloud.google.com/appengine/docs/managed-vms/ https://cloud.google.com/appengine/docs/managed-vms/ You can use whatever Database or NPM modules you want.
- edwinnathaniel 11y agoHi Justin, I'm currently trying to get my feet wet on GAE. Judging from your statement, are you suggesting that people should look into Managed VMs and maybe skip the regular GAE (or known as the original GAE)? Perhaps the original GAE will be deprecated in the future?
- boulos 11y agoNo, that's not the case. Managed VMs is a more flexible environment than our "GAE Standard" environment, but (at least currently) comes with some of the tradeoffs of a full VM (startup time, minimum size, etc.). If you've got say a vanilla python app that doesn't need custom native modules, GAE Standard is great! If you want to run something we don't currently support, then Managed VMs gives you the flexibility a Compute Engine VM can offer you (run whatever you like). Disclaimer: I work on Compute Engine, not App Engine but I'm familiar enough with their thinking.
- edwinnathaniel 11y agoThanks for the info @boulos. I've been watching GCP division quietly building solid products and ecosystems while the limelight shine towards AWS and Azure to some extend. I'm also very excited to see GCP people responding to any GCP questions and/or clarifying its past "reputation" with a calm manner ;). Clearly the tide has changed (probably comes from the top too? :)). Me and my partner are planning to invest a significant amount of time to the GCP ecosystems!
- jfoster 11y agoDoes Google still patch the stack (kernel, web server, interpreter, database, modules, etc.) whenever security issues are discovered? I always thought that was one of the best bits of the App Engine model.
- dlor 11y agoCurrently we patch all the software on the VM, but not the application container itself. We make new base images available, but the user has to re-deploy to pick up these changes.
- jfoster 11y agoIs there any notification (email, readable VM version on a server, etc.) when one of those redeployments should occur?
- hypertexthero 11y agoIt's great to see App Engine getting better! I'm exploring it again after trying the original app a few years back and am enjoying the improved interface and abundant documentation and tutorials. One suggestion: Make a cloud storage product option free up to a few megabytes for hosting small personal sites. Maybe it exists already but I haven't found it.
- glaberficken 11y agoYou can easily run a small personal site on the free tier of GoogleAppEngine. Just google for "app engine static site" There are a ton of options on what you can achieve inside the free tier. But the simplest one for the use case you seem to require is to author a static html site in a good WYSIWYG html editor and then deploying it as a static site in GAE.
- hypertexthero 11y agoThank you — I will try this! Edit: My use case is to move a couple of static sites to a host that supports a secure HTTPS connection by default, which App Engine seems to do: <https://cloud.google.com/appengine/docs/python/console/using-custom-domains-and-ssl> https://cloud.google.com/appengine/docs/python/console/using.... I'll try moving one of my sites over and set up SSL with with a certificate from <https://letsencrypt.org/> https://letsencrypt.org/>.
- deleted 11y ago[deleted]
- mattbillenstein 11y agoYes yes, downvote the only guy on this thread who has any real experience running a production app on AppEngine.
- eecks 11y agoI appreciate the input as I am trying to choose a hosting provider.
- mvitorino 11y agoI do have plenty of production experience with GAE and is very different from yours. But our experience is from 2014. Since that period we were only affected by a single outage, on the 6th of Dec 2015 related to Google authentication against it's apis for around 17h. Google seems to be giving a lot of love to GAE recently, especially with Managed VMs. They have delivered substancial improvements to the reliability of the platform. EDIT: note that the issue I mentioned only affected 1.29% of the apps on GAE according to Google.
- thesandlord 11y agoYou raise some good points. If App Engine does not work for your project, there is always Container Engine (Which is hosted Kubernetes, so 100% OSS) and Compute Engine (plain old VMs). 2014 App Engine is also different from 2016 App Engine, hopefully a lot of the problems you had have been addressed. (I work for Google Cloud Platform)
- joeblau 11y agoI agree. I built a huge python app on AppEngine back in 2009-2012 called Vroomtrap which was an app for tracking speed traps. The BigTable data store wasn't ever designed for multiple inequality queries (e.g. where X is between two points AND Y is between two points -- basically a bounding box) I ended up creating a GeoHashing function but I would have been better off not wasting so much time going down the AppEngine route in the first place. The only thing I have on app engine is a URL shorter which was a 3 hour project that I had to do for GetAround. Last year I moved a personal project (https://www.gitignore.io https://www.gitignore.io) over to Heroku and it's been awesome. My whole application runs in memory on a single free dyno. the service uptime has been great and Heroku's pipeline system (Which is basically like Amazon's internal pipeline system) is really good for testing in staging and then going to production.
- deleted 11y ago[deleted]
- foxylad 11y agoWe've had a very different experience than you. We've used Appengine since 2009, and are about to launch our third service built on it. It's important to understand that that Appengine is not AWS. It is a massively distributed system providing scalability and fault-tolerance that you would need something like ten AWS servers spread over several availability zones to replicate. Slow - true, request responses can be several times slower than a single AWS server. That latency is due to the distributed nature of the datastore and memcache - but that buys completely seamless scaling. So if you think you need speed to handle lots of requests, you don't. Appengine will spin up as many instances as you need to manage your traffic. Expensive - I'm a nasty mean bugger so if there was a cheaper option, I'd take it. A single server on AWS might be slightly cheaper, but ten AWS servers spread over several availability zones (and the sysadmin to manage them) are definitely not. OSS - ummm, you haven't read the article, have you? You have access to the source code of pretty much everything. Stable - in the early days of the master-slave datastore, we did have occasional outages. But in the last four years we've had a single outage that affected our customers. I thank my lucky stars every time AWS has a hiccup. Furthermore when there is an outage, I know there are better sysadmins than I could ever afford dealing with it. At the end of the day, it's the usual horses for courses. If you like doing your own sysadmin, Appengine will fill you with horror. But if you are a developer, Appengine abstracts the system admin away so you can concentrate on doing what you do best.
- bduerst 11y agoWhy didn't you use managed VMs?
- IanCal 11y agoWell, managed VMs were only launched in 2014, so they may have migrated away before the launch. Even now they're still in beta, so I'm not too shocked at someone avoiding migrating from one platform they have issues with to a similar one with the same provider but which is only in an alpha state.
- bitmapbrother 11y ago"It's slow, expensive" - That sounds exactly like Homejoy!
- milesward 11y agoDatastore isn't proprietary, AppScale (http://www.appscale.com http://www.appscale.com) has built a handy OSS version which runs above Cassandra. https://github.com/AppScale/appscale https://github.com/AppScale/appscale Disclaimer: I work at GCP, so I'm geeked about open approaches to solving problems :)
- aleaxit 11y agoExcellent point Miles (and as you know I work in GCP too), I would add https://cloudplatform.googleblog.com/2015/05/AppScale-and-App-Engine-Work-Together-to-Provide-Infrastructure-Flexibility.html https://cloudplatform.googleblog.com/2015/05/AppScale-and-Ap... and https://www.youtube.com/embed/2fRTgosMtw4?rel=0&controls=0&showinfo=0&autoplay=1 https://www.youtube.com/embed/2fRTgosMtw4?rel=0&controls=0&s... (in both of which, of course, you feature quite prominently:-)...