Go 1.11 is now available on App Engine
Steren Giannini
Group Product Manager
Go developers have been using Google App Engine as a fully managed, scalable and pay-for-what-you-use solution to host websites and APIs since 2011. However, it came with some restrictions: You had to organize your code in a non-idiomatic way and had to use a special SDK to start your app, make network connections or store data.
Today, we are introducing the beta availability of the Go 1.11 runtime for the App Engine standard environment. In addition to updating to the latest version of the Go programming language, which was released just a few weeks ago, this lifts the restrictions of the previous Go App Engine standard runtime. With the Go 1.11 runtime, you can:
Organize your Go application the idiomatic way: add your dependencies in a
vendor
folder and use amain
packageImport any Go packages
Use your favorite Go web framework, like gin
Adding support for Go modules
Go 1.11 introduced support for versioned modules as an experimental opt-in feature. A versioned module is defined by a go.mod
file, which captures the module’s versioned dependencies. App Engine also supports these experimental Go modules: When you deploy your app from outside of your GOPATH
, if a go.mod
file is present, the dependencies will be automatically downloaded before building your application in the cloud.
Using your Go app on the App Engine standard environment
The App Engine standard environment brings some key benefits when you are deploying and running your cloud apps.
Automatic scaling, pay for what you use: When you deploy your Go application to the App Engine standard environment, your application is automatically scaled based on the incoming HTTP requests. App Engine is able to quickly scale it up, and later scale it down to zero when no instances are needed. This all happens without you having to worry about the underlying infrastructure, and only having to pay for what you use.
Strong security: On App Engine, you get an HTTPS URL out of the box, and you can generate a certificate for your own custom domain with a single click. But App Engine does even more when it comes to security: We always update to the latest Go 1.11 release containing security fixes; we automatically update the Ubuntu operating system for you; and we protect you against DDoS attacks.
GCP integration: You can store Go app data in Cloud Firestore or Cloud SQL with ease without having to worry about service accounts, use the OpenCensus Libraries for Go to trace your application, and automatically see your logs and errors in Stackdriver.
Try Go 1.11 now
App Engine is ready and waiting to host your Go apps:
Learn how to migrate from the Go 1.9 runtime to the new Go 1.11 runtime with this guide. (You can still use the legacy App Engine APIs with the Go 1.11 runtime.)