Stay organized with collections
Save and categorize content based on your preferences.
Hosting Applications on Google Cloud
Google Cloud offers a wide range of options for application hosting. Take a look at the charts below to find out which one is right for your needs.
Not sure where to start? Take a look at some common scenarios below.
Web frameworks, microservices
Examples:
- Flask
- Django
- Express.js
- Symfony
- Spring Boot
→
Cloud Run
- Scales to meet sudden demand
- Pay for what you use
- Supports API endpoints
Overview
Manipulate user generated data and events
Examples:
- Post a comment on Slack channel following a GitHub commit
- Statistical analysis
- Image thumbnail generation
→
Cloud Run functions
- Designed for event-driven workloads
- Scales to meet sudden demand
- Minimal configuration
Quickstart
Industry standard packaging for multi-cloud infrastructure
Examples:
- Software written in any languages using specific system packages
- Off-the-shelf software provided as container images
→
Cloud Run
- Supports industry-standard Docker containers
- Scales your containerized app automatically
- Custom binaries and system dependencies
- Supports API endpoints
Quickstart
Raw compute to meet existing infrastructure requirements
Examples:
- Relational databases, SAP HANA
- CRM systems
- Legacy ERP systems
→
Many workloads have specific technical requirements.
Platforms are ordered by degree of abstraction.
How is your code packaged upon deployment to a given platform?
-
VM images - snapshots of an entire filesystem, including the underlying OS.
-
Containers - portable cross-platform filesystems isolated from the underlying OS.
-
Sources - one service contained in a directory with one or more use cases.
-
Functions - individual code snippets each corresponding to a single use case.
Custom URLs
Can you create multi-layer URL paths (such as /abc/def
) and/or use your own
domain name?
Persistent disks
Can disk state be saved when an instance shuts down, or must long-term data be
stored outside the instance?
Scale-to-zero
Can this product scale down to zero instances and avoid billing me for periods of zero
requests?
WebSockets
Does this product support the
WebSocket protocol?
Run any language
Can this product run code in arbitrary programming languages?
Request timeout
What is the maximum amount of time the platform will wait
for a response from the application's code?
Background processes
Can this product run ongoing background operations outside a request period?
[[["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\u003eGoogle Cloud offers various application hosting options, including Cloud Run, Cloud Run functions, and Compute Engine, each catering to different needs.\u003c/p\u003e\n"],["\u003cp\u003eCloud Run is ideal for HTTP services, container-based apps, and event-driven workloads, offering scalability and a pay-per-use model.\u003c/p\u003e\n"],["\u003cp\u003eCompute Engine is best for monolithic workloads requiring operating system-level control, supporting custom machine types and autoscaling.\u003c/p\u003e\n"],["\u003cp\u003eThe choice of hosting platform depends on factors such as deployment format, scaling requirements, language support, and the need for persistent disks.\u003c/p\u003e\n"],["\u003cp\u003eThe platforms differ on multiple capabilities, such as having custom URLs, scaling to zero, allowing custom system packages, persistent disks, supporting WebSockets, running any language, having background processes, request timeout, supporting GPU access and VPC connectivity.\u003c/p\u003e\n"]]],[],null,["# Application Hosting Options\n\nHosting Applications on Google Cloud\n====================================\n\nGoogle Cloud offers a wide range of options for application hosting. Take a look at the charts below to find out which one is right for your needs.\n\n*** ** * ** ***\n\nUse cases\n---------\n\nNot sure where to start? Take a look at some common scenarios below. \nHTTP services and backend apps \nWeb frameworks, microservices \nExamples:\n\n- Flask\n- Django\n- Express.js\n- Symfony\n- Spring Boot \n→ \nCloud Run\n\n- Scales to meet sudden demand\n- Pay for what you use\n- Supports API endpoints\n\n[Overview](/run) \nEvent driven and data processing apps \nManipulate user generated data and events \nExamples:\n\n- Post a comment on Slack channel following a GitHub commit\n- Statistical analysis\n- Image thumbnail generation \n→ \nCloud Run functions\n\n- Designed for event-driven workloads\n- Scales to meet sudden demand\n- Minimal configuration\n\n[Quickstart](/functions/docs/quickstarts) \nContainer-based apps and services \nIndustry standard packaging for multi-cloud infrastructure \nExamples:\n\n- Software written in any languages using specific system packages\n- Off-the-shelf software provided as container images \n→ \nCloud Run\n\n- Supports industry-standard Docker containers\n- Scales your containerized app automatically\n- Custom binaries and system dependencies\n- Supports API endpoints\n\n[Quickstart](/run/docs/quickstart) \nMonolithic workloads \nRaw compute to meet existing infrastructure requirements \nExamples:\n\n- Relational databases, [SAP HANA](/sap/docs/sap-hana-deployment-guide)\n- CRM systems\n- Legacy ERP systems \n→ \nCompute Engine\n\n- Operating system-level control\n- Supports [custom machine types](/custom-machine-types)\n- [Autoscaling support](/compute/docs/instance-groups#managed_instance_groups)\n\n[Tutorials](/compute/docs/tutorials) \n\nHosting options\n---------------\n\nMany workloads have specific technical requirements. Platforms are ordered by degree of abstraction. \n\n^2^ \nContainer instances on GKE do not persist data upon shutdown. However, Compute Engine persistent disks can be [mounted to container instances on GKE](/kubernetes-engine/docs/concepts/persistent-volumes). \n^β^ \nBeta software [has no SLA](/terms/launch-stages) and may not be suitable for production workloads. \n\nKey terms\n---------\n\n#### Deployment format\n\nHow is your code packaged upon deployment to a given platform?\n\n- VM images - snapshots of an entire filesystem, including the underlying OS.\n- Containers - portable cross-platform filesystems isolated from the underlying OS.\n- Sources - one service contained in a directory with one or more use cases.\n- Functions - individual code snippets each corresponding to a single use case. \n\n#### Custom URLs\n\n\nCan you create multi-layer URL paths (such as `/abc/def`) and/or use your own\n[domain name](https://wikipedia.org/wiki/Domain_name)? \n\n#### Persistent disks\n\n\nCan disk state be saved when an instance shuts down, or must long-term data be\nstored [outside the instance](/storage-options)? \n\n#### Scale-to-zero\n\n\nCan this product scale down to zero instances and avoid billing me for periods of zero\nrequests? \n\n#### WebSockets\n\n\nDoes this product support the\n[WebSocket](https://wikipedia.org/wiki/WebSocket#Overview) protocol? \n\n#### Run any language\n\n\nCan this product run code in arbitrary programming languages? \n\n#### Request timeout\n\n\nWhat is the maximum amount of time the platform will wait\nfor a response from the application's code? \n\n#### Background processes\n\n\nCan this product run ongoing background operations outside a request period? \n\n#### Use GPUs\n\n\nDoes this product support\n[hardware acceleration](https://wikipedia.org/wiki/Hardware_acceleration)\nfor GPU-optimized workloads? \n\n#### VPC connectivity\n\n\nCan this product access resources within a\n[Virtual Private Cloud](/vpc)?"]]