Cloud Engine Overview
Cloud Engine is a platform that lets you host backends for your applications. If you have web apps or backend programs built with Node.js, Python, Java, PHP, .NET, Go, or C++, you can deploy them to Cloud Engine and it will automatically build runnable versions from the source code and run them in independent containers. Cloud Engine provides capabilities including log viewing, monitoring, load balancing, zero downtime deployment, and autoscaling that you can use out of the box. Additional features provided by Cloud Engine include scheduled tasks, domain and certificate management, and hosted database management systems including Redis, MySQL, MongoDB, and Elasticsearch.
Ready to deploy your first app? Check out this guide to learn how to get your app running on Cloud Engine in seconds. From there you can explore the different runtime environments supported by Cloud Engine.
|Runtime environment||Supported versions||Supported package managers||Documentation||Demo projects|
|Frontend||Node.js >= 0.12||NPM / Yarn||Frontend Runtime Environment||Frontend Runtime Environment § Getting Started|
|Node.js||>= 0.12||NPM / Yarn||Node.js Runtime Environment||node-js-getting-started (Express)|
|Python||>= 2.7||pip||Python Runtime Environment||python-getting-started (Flask)|
|Java||8, 11–15||Maven||Java Runtime Environment||servlet-getting-started|
|PHP||5.6, 7.0–8.0||Composer (v1)||PHP Runtime Environment||slim-getting-started|
|.NET||2.1||dotnet||.NET Runtime Environment||dotnet-core-getting-started|
|Go||>= 1.10||go mod||Go Runtime Environment||golang-getting-started (Echo)|
|C++||GCC 9.4||Bazel||C++ Runtime Environment||cpp-socket (Bazel)|
Cloud Functions and Hooks
Cloud Functions lets you run backend code on the cloud in response to various types of events. It automatically serializes objects that have the data types provided by our Data Storage service and is supported by our client-side SDKs. Hooks allows you to trigger custom logics or perform additional permission checks when there are objects created, updated, or deleted in the Data Storage service, users logged in or verified, or messages sent, conversations created, or clients logged in or logged out in the Instant Messaging service.
You can start using Cloud Functions with little experience in traditional backend development. Check out this guide to learn how to write your first Cloud Function.
Cloud Functions comes with features like Scheduled Tasks and Cloud Queue that make it convenient for you to manage your Cloud Functions in a more complex manner. You can have your Cloud Functions triggered routinely, retry failed function calls, skip duplicate function calls, look up function outputs, and delay function calls.
Cloud Engine hosts a collection of popular database management systems that you can use as alternatives to the Data Storage service:
|Redis||Master/slave (1M/1S)||High availability by default with automatic failover||LeanCache Guide|
|MongoDB||Replica set (1P/1S/1A)||High availability by default with automatic failover||LeanDB MongoDB Guide|
|MySQL||Master/slave (1M/1S)||High availability by default with automatic failover||LeanDB MySQL Guide|
|Elasticsearch||One or three nodes||High availability by default with automatic failover when using three nodes||LeanDB Elasticsearch Guide|
- With the CLI, you can easily deploy and debug projects that use Cloud Functions. See CLI Guide for more information.
- You can use Cloud Functions with its REST API besides the Data Storage SDK. See Cloud Engine REST API Guide for more information.
- If you have a dedicated IP, you can bind it to your Cloud Engine instances. See Dedicated IP for Cloud Engine for more information.
- For those curious about the stuff behind the scenes, Deep Dive Into Cloud Engine lists a few technical details about Cloud Engine.