Go 1.11 has reached end of support
and will be
deprecated
on January 31, 2026. After deprecation, you won't be able to deploy Go 1.11
applications, even if your organization previously used an organization policy to
re-enable deployments of legacy runtimes. Your existing Go
1.11 applications will continue to run and receive traffic after their
deprecation date. We
recommend that you
migrate to the latest supported version of Go.
How-to Guides
Stay organized with collections
Save and categorize content based on your preferences.
Migrating Your App to Go 1.12
Defining Configuration Files
Testing and Deploying your Application
Managing Your App's Traffic
Configuring Warmup Requests
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],[],[[["\u003cp\u003eMigrate applications to the Go 1.12 runtime on the App Engine standard environment, following guidelines for differences in the new version.\u003c/p\u003e\n"],["\u003cp\u003eConfigure App Engine services using configuration files to structure the app and manage various settings, including specifying dependencies and runtime settings.\u003c/p\u003e\n"],["\u003cp\u003eLearn the process of testing, deploying, and debugging your App Engine application, including writing application logs for tracking and viewing details.\u003c/p\u003e\n"],["\u003cp\u003eExplore diverse data storage solutions like Cloud Datastore, Cloud SQL for MySQL and Postgres, and Cloud Storage, as well as options for serving static files, which are available to your app.\u003c/p\u003e\n"],["\u003cp\u003eSecure your App Engine application through features like access control, firewalls, and user authentication, and also learn about custom domains, traffic management, and scheduling cron jobs.\u003c/p\u003e\n"]]],[],null,["# How-to Guides\n\nMigrating Your App to Go 1.12\n-----------------------------\n\n- [### Migrating Your App to Go 1.12\n Learn how to migrate your Go application to the new Go 1.12 runtime on\nApp Engine standard environment.](/appengine/migration-center/standard/migrate-to-second-gen/go-differences) \n\nDesigning Your App\n------------------\n\n- [### Structuring Web Services in App Engine\n Understand how to create configuration files to structure App Engine\n services and control optional features in your app.](/appengine/docs/legacy/standard/go111/configuration-files)\n- [### Communicating Between Your Services\n Understand how to communicate between your App Engine\n services, other Google Cloud services, and other external\n applications.](/appengine/docs/legacy/standard/go111/communicating-between-services)\n- [### Handling Requests\n How requests to your application are understood and handled within App Engine.](/appengine/docs/legacy/standard/go111/how-requests-are-handled)\n- [### Routing Requests\n How HTTP requests from users and other applications can be routed using\ndispatch files.](/appengine/docs/legacy/standard/go111/how-requests-are-routed) \n\nDefining Configuration Files\n----------------------------\n\n- [### Defining Runtime Settings\n Specify your Go 1.11 runtime configuration, including\n versions and URLs.](/appengine/docs/legacy/standard/go111/configuring-your-app-with-app-yaml)\n- [### Specifying Dependencies\n Specify your Go 1.11 dependencies, framework, and client\nlibraries.](/appengine/docs/legacy/standard/go111/specifying-dependencies) \n\nTesting and Deploying your Application\n--------------------------------------\n\n- [### Testing and Deploying your Application\nRun your program locally and deploy it to App Engine.](/appengine/docs/legacy/standard/go111/testing-and-deploying-your-app) \n\nDebugging Your App\n------------------\n\n- [### Writing Application Logs\n Learn how to write application logs and view request and\nresponse details in application and system logs.](/appengine/docs/legacy/standard/go111/writing-application-logs) \n\nStoring Data and Files\n----------------------\n\n- [### Understanding Data and File Storage\n Choose from a variety of databases, including third-party\n databases such as Redis, MongoDB, PostgreSQL, Cassandra, and Hadoop.](/appengine/docs/legacy/standard/go111/storage-options)\n- [### Serving Static Files\n Learn how to serve static files such as JavaScript,\n images, and CSS from your app.](/appengine/docs/legacy/standard/go111/serving-static-files)\n- [### Using Cloud Datastore\n (NoSQL application data)\n Store application data from your App Engine app in\n Cloud Datastore.](/appengine/docs/legacy/standard/go111/using-cloud-datastore)\n- [### Using Cloud SQL for MySQL\n Store application data from your App Engine app in\n Cloud SQL for MySQL.](/sql/docs/mysql/connect-app-engine)\n- [### Using Cloud SQL for Postgres\n Store application data from your App Engine app in\n Cloud SQL for Postgres.](/sql/docs/postgres/connect-app-engine)\n- [### Using Cloud Storage (cloud file hosting)\n Store and serve files, such as movies or images or other\nstatic content.](/appengine/docs/legacy/standard/go111/using-cloud-storage) \n\nSecuring Your App\n-----------------\n\n- [### Application Security\nEnable features to ensure that your App Engine app is secure.](/appengine/docs/legacy/standard/go111/application-security) \n\nControlling Access\n------------------\n\n- [### Understanding Access Control\n Set access control using roles at the project level.](/appengine/docs/legacy/standard/go111/access-control)\n- [### Authorizing Apps\n Learn how to use service accounts to authorize\n applications.](/appengine/docs/legacy/standard/go111/access-control)\n- [### Granting Project Access\n Provide role-based access to your project and its\n resources.](/appengine/docs/legacy/standard/go111/access-control)\n- [### Creating Firewalls\n Configure a firewall to gain identity-independent control\nover access to your App Engine app.](/appengine/docs/legacy/standard/go111/creating-firewalls) \n\nAuthenticating Users\n--------------------\n\n- [### Authenticating Users\nLearn about user authentication options for App Engine.](/appengine/docs/legacy/standard/go111/authenticating-users) \n\nUsing a Custom Domain\n---------------------\n\n- [### Mapping Custom Domains\n Create a domain mapping for your App Engine app so\n that it uses a custom domain](/appengine/docs/legacy/standard/go111/mapping-custom-domains)\n- [### Securing Custom Domains with SSL\n HTTPS connections on your custom domain will be enabled\nautomatically using managed SSL certificates.](/appengine/docs/legacy/standard/go111/securing-custom-domains-with-ssl) \n\nManaging Your App's Traffic\n---------------------------\n\n- [### Migrating Traffic\n Traffic migration switches the request routing between the\n versions within a service of your application, moving traffic from one or more\n versions to a single new version.](/appengine/docs/legacy/standard/go111/migrating-traffic)\n- [### Splitting Traffic\n Use traffic splitting to specify a percentage distribution\nof traffic across two or more of the versions within a service.](/appengine/docs/legacy/standard/go111/splitting-traffic) \n\nScheduling Cron Jobs\n--------------------\n\n- [### Scheduling Jobs with cron.yaml\n Configure regularly scheduled tasks that operate at defined\ntimes or regular intervals.](/appengine/docs/legacy/standard/go111/scheduling-jobs-with-cron-yaml) \n\nConfiguring Warmup Requests\n---------------------------\n\n- [### Configuring Warmup Requests to Improve Performance\n Use warmup requests to avoid request and response latency\n during the time when your app's code is being loaded to a newly created\ninstance.](/appengine/docs/legacy/standard/go111/configuring-warmup-requests) \n\nVPC networks\n------------\n\n- [### Connecting to a VPC network\n Learn how to use Serverless VPC Access to connect\n your App Engine standard environment app directly to your VPC.](/appengine/docs/legacy/standard/go111/connecting-vpc)\n- [### Connecting to a Shared VPC network\n Learn how to use Serverless VPC Access to connect\nyour App Engine standard environment app directly to your Shared VPC.](/appengine/docs/legacy/standard/go111/connecting-shared-vpc) \n\nOutbound IP Addresses\n---------------------\n\n- [### Outbound IP Addresses\nLearn about the outbound IP addresses App Engine uses.](/appengine/docs/legacy/standard/go111/outbound-ip-addresses) \n\nApp Engine Admin API\n--------------------\n\n- [### App Engine Admin API\n Use the RESTful API with any programming language to\n manage your App Engine applications.](/appengine/docs/admin-api)"]]