5 ms·
If you're already using GCP, my general advice for new projects is almost always some form of "just throw it on AppEngine". No, you don't need multi-region depl
by spyspy 6y ago
If you're already using GCP, my general advice for new projects is almost always some form of "just throw it on AppEngine". No, you don't need multi-region deployments. No, you don't need 32TB of memory per instance. No, you do not need kubernetes. No, istio is not going to solve this. No, you're not hosting your own kafka cluster.
I've found devs are always trying to over-engineer complex solutions to dead simple problems. Just let Google do it and get some sleep.
- gamegod 6y ago"Just put all your eggs in one basket!" K
- sg47 6y agoNope, just one or two eggs. When those eggs hatch and you have a massive chicken farm, you can start putting your eggs in multiple baskets.
- yesenadam 6y agoPeople who count their chickens before they are hatched act very wisely because chickens run about so absurdly that it's impossible to count them accurately... – Oscar Wilde, letter to R. Ross, 31 May 1898
- freehunter 6y agoStarting simple isn't putting all your eggs in one basket. In fact it's such a common recommendation (and so commonly forgotten about) that there are several phrases designed just to teach this one lesson: KISS - Keep it simple, silly YAGNI - You ain't gonna need it MVP - Minimum viable product Overengineering Real artists ship I'm sure there's a ton more examples but that's just off the top of my head. Point is, until you know that you need high availability and multi-zone disaster recovery and etc etc, just engineer it for the problems you actually have.
- squnch 6y agoBut, the fact that Zoom was able to maintain its infrastructure during a period of hypergrowth added $20 billion to its market cap. If it was only ready for the problems it had, and not for hypergrowth, it might have been widely abandoned as meetings failed.
- batter 6y agoAppEngine doesn't scale fast, gradual traffic increase fits better for AE. We have spikes x 1000 and back within one minute, stable 10 boxes with average hardware (compute engine) handle it more reliably than more than 100 AE Golang instances which will be hammering everything downstream. Also GAE costs will be insane compared to compute engine.
- spyspy 6y agoIf you can predict when the spike is going to occur, you can actually use the GAE admin API to modify the number of idle instances on the fly. We used this exact method to handle spikes when new games were released at my last job. Then a cron or delayed cloud task would reset the instance count afterward.
- loktarogar 6y agoit's easy to put them all in one basket if you only have one or two eggs
- infogulch 6y agoJust don't pretend that the two eggs you start with are twenty just yet.
- realbarack 6y agoFor new projects sure, but you need an escape hatch. App Engine costs can spiral out of control. I know of at least one startup that was pretty successful in finding product market fit but sunk their own ship because they weren't able to migrate off of App Engine quickly enough.
- Scarbutt 6y agoYou make it sound as if appengine solves all your problems, the prime source of complexity in most web apps is the database, which you don't mention.
- spyspy 6y agoIn larger organizations you’re rarely building an entirely new web app from scratch. Yes, that’s a more complex endeavor. A lot of the problems boil down to “sit on a queue, grab some data, mix in some other data, send it somewhere else”. But GAE at the very least solves the scaling and cert management.