With that said, I'd feel fine relying on VMs, disks, managed SQL, managed Kubernetes, etc. Maybe I'm too optimistic. And Google is giving exactly the guarantees they promised - 1 year of notice before shutting down a product.
With that said, I'd feel fine relying on VMs, disks, managed SQL, managed Kubernetes, etc. Maybe I'm too optimistic. And Google is giving exactly the guarantees they promised - 1 year of notice before shutting down a product.
This is mostly true, but a bit more nuanced than one might think. Let's take the Go 1.9 runtime for App Engine. It was deprecated on June 27, 2019. [1] Existing deployments will keep working for an undetermined time, however new deployments won't be accepted starting October 1, 2019. That's just a 3 month notice! The offered solution is to migrate to Go 1.11 [2], however that's not straightforward either, because the Go 1.11 runtime is using 2nd generation App Engine, which means a bunch of App Engine specific code that you had working before will need to be rewritten. To make things even more spicy there's already a migration path to Go 1.12 which deprecates every single App Engine specific API. [3] Google is basically slowly shutting down the whole 1st generation App Engine.
--
[1] https://cloud.google.com/appengine/docs/standard/go/release-...
[2] https://cloud.google.com/appengine/docs/standard/go111/go-di...
[3] https://cloud.google.com/appengine/docs/standard/go112/go-di...
(Given their history I'd expect it's more likely they build their own BEAM and put a new language on top of it)