Slide 1

Slide 1 text

App Engine Standard 2nd generation runtimes Guillaume Laforge Google Cloud, Developer Advocate @glaforge

Slide 2

Slide 2 text

Popular Languages Node.js, Java, Ruby, Go, Python, PHP Application Versioning Host multiple versions of your app Create dev, test, staging, prod environments Google App Engine a powerful serverless platform, to build apps that scale automatically Fully Managed Fully managed environment Focus on code, App Engine manages infra Monitoring, Logging & Diagnostics Stackdriver for application diagnostics, debugging and monitoring Traffic Splitting Route incoming requests to different app versions A/B testing, Incremental feature rollouts Application Security Access rules with App Engine firewall Custom domains with managed SSL/TLS certs Popular Languages Fully Managed Monitoring, Logging & Diagnostics Application Versioning Traffic Splitting Application Security

Slide 3

Slide 3 text

From… to... 2008 2019

Slide 4

Slide 4 text

Second Generation Runtimes More idiomatic code bases More portable applications More up-to-date runtimes >

Slide 5

Slide 5 text

gVisor Sandbox https://gvisor.dev/

Slide 6

Slide 6 text

More idiomatic code bases Past limitations are gone! Python ● Use Python 3 instead of Python 2 ● Any Python web framework ● Install arbitrary 3rd party dependencies (incl. native) ● Access the file system ● Spawn background threads ● Use Google Cloud client libraries >

Slide 7

Slide 7 text

More idiomatic code bases Past limitations are gone! Java ● Use Java 11 instead of Java 8 ● Any web framework (incl. non-Servlet based) ● No more class whitelist (Java2D, threads, sockets…) ● XML configuration → YAML configuration ● Customize entrypoint ○ JVM fine-tuning, executable JARs >

Slide 8

Slide 8 text

More portable applications Old App Engine built-in APIs ⇒ standalone cloud solutions ● Datastore → Cloud Datastore, Cloud Firestore, Cloud SQL ● Blobstore → Cloud Storage ● Cron → Cloud Scheduler ● Task Queues → Cloud Tasks ● Logging → Stackdriver Logging ● Memcache → Cloud Memorystore

Slide 9

Slide 9 text

More up-to-date runtimes And double the memory! Python 2.5 / 3.7 Java 8 / 11 ß Node.js 10 PHP 5.5 / 7.2 / 7.3 Ruby 2.5 ß Go 1.11 / 1.12

Slide 10

Slide 10 text

Java 11 Micronaut Apache Groovy PostgreSQL Demo #1

Slide 11

Slide 11 text

Node.js with Headless Chrome Demo #2

Slide 12

Slide 12 text

Ruby on Rails Demo #3

Slide 13

Slide 13 text

Thank you! cloud.google.com/appengine @glaforge