Presented at Serverlessconf 2019 New York City by Ahmet Alp Balkan (Developer Advocate, Google Cloud) and Donna Malayeri (Product Manager, Google Cloud)
without the need for infrastructure provisioning and scaling, have built-in availability and security, and use a pay-for-valuebilling model. Serverless isn't just Lambda—it's the entire application stack. -Werner Vogels, CTO Amazon.com
up control over low-level details in favor of simplicity. Infrastructure as commodity. Write complete programs, packaged as "images" • HTTP server • Graceful termination, signal handling • Concurrency control Access to low-level properties: • OS/kernel options, network protocols • build/compilation/runtime options FUNCTIONS CONTAINERS
hermetic and reproducible OS is patched by the platform Runtime patches require rebuild/redeploy. OS/Runtime patches provided by the platform. Can be customizable, if you can maintain a custom runtime. FUNCTIONS CONTAINERS
runtime to have more languages/frameworks. FUNCTIONS Run any language/framework. (x86 application binary interface) Bring custom dependencies/libs, existing apps. CONTAINERS
and write Dockerfiles to build container images → CNCF Buildpacks → Language-specific builders: ko (Go), Jib (Java), … 2. Container images contain libraries/binaries you need to patch. → You can build minimal container images → static compilation, distroless
Learn and use serverless frameworks/SDKs FUNCTIONS CONTAINERS You write complete programs, which you can run locally. Use existing developer tools. (IDEs, profilers, debuggers, …)