Persevering with innovation in serverless
Google Cloud not too long ago launched a collection of assets designed to assist clients modernize their serverless compute platform expertise and improve to the newest options in addition to newer merchandise which can be a greater match for his or her workloads. The preliminary content material is concentrated on customers of the very first Cloud product, Google App Engine.
App Engine launched in 2008 as the primary serverless product lengthy earlier than the buzzword was coined. Since then, App Engine has been adopted by many shoppers worldwide. The Cloud workforce did not cease there and continued to roll out extra options and product launches, together with: App Engine’s Versatile setting to help extra runtimes (2016), Cloud Capabilities, for microservice or FaaS/function-hosting (2017), a extra open second technology App Engine platform supporting newer language releases (2018), and Cloud Run, giving customers the power to serve containerized functions in a serverless setting (2019). With a extra full product suite and a extra open platform, builders have extra decisions than ever earlier than.
As App Engine turned extra standard, lots of its authentic providers matured to turn out to be their very own standalone Cloud merchandise. For instance, App Engine’s authentic Activity Queues service is now Cloud Duties, and its authentic Datastore service is now Cloud Datastore. Moreover, some customers have expressed the need to additionally run their App Engine apps on-premise however found the App Engine providers solely work on the platform. These components led to the launch of App Engine’s second technology platform with out these bundled proprietary providers. Because of this, customers have extra choices, and their apps are extra transportable. Assist for extra trendy language runtimes resembling Python three, PHP 7, and the introduction of Node.js was additionally featured as a part of this launch.
Serving to customers modernize their serverless apps
With the sundown of Python 2, Java eight, PHP 5, and Go 1.11, by their respective communities, Google Cloud has assured customers by expressing continued long-term help of those legacy runtimes, together with sustaining the Python 2 runtime. So whereas there isn’t a requirement for customers emigrate, builders themselves are expressing curiosity in updating their functions to the newest language releases.
Google Cloud supplies a set of migration guides for customers modernizing from Python 2 to three, Java eight to 11, PHP 5 to 7, and Go 1.11 to 1.12+ in addition to a abstract of what’s obtainable in each first and second technology runtimes. Nevertheless, transferring to unbundled providers (standalone Cloud equivalents or third-party options) might not be intuitive to everybody. And whereas new merchandise and customers are nice, serving to present customers modernize their apps to make the most of newer options is simply pretty much as good. To that finish, earlier this 12 months, we launched the “Serverless Migration Station” video sequence and corresponding code samples and codelab tutorials, initially targeted on Python and App Engine.
Every “migration module” teaches a single modernization method, normally because it pertains to one in all our serverless platforms. These eventualities embody migrating from a legacy App Engine service, upgrading a serverless information storage resolution from Cloud Datastore to Cloud Firestore, and even altering merchandise altogether, like containerizing App Engine apps for Cloud Run.
A video plus a codelab (free, self-paced tutorial) present with hands-on expertise implementing particular migrations, giving customers the “muscle reminiscence” wanted for after they’re able to make the identical upgrades to their very own functions. All modules characteristic a nearly-identical pattern app. The place to begin is all the time a working app to which the migration is utilized, leading to one other working app, normally functionally-identical except in any other case specified. Listed here are some modules obtainable at present (with extra coming quickly):
- Migrating internet frameworks from webapp2 to Flask
- Migrating from App Engine ndb to Cloud NDB
- Migrating from the Cloud NDB to Cloud Datastore
- Containerizing and migrating from App Engine to Cloud Run (Docker)
- Containerizing and migrating from App Engine to Cloud Run (Cloud Buildpacks)
- Migrating from Cloud Datastore to Cloud Firestore
- Migrating from App Engine taskqueue to Cloud Duties
All migration modules, their movies (when obtainable), codelabs, and pattern supply code, could be discovered within the migration module repo. Along with these modules, separate repos for migration samples from the documentation in addition to community-sourced migration samples are additionally obtainable. We hope these assets allow you to speed up modernizing your serverless apps and demonstrates Google Cloud’s dedication to each present clients in addition to new ones!