Go Serverless
Mark Hemmings
CTO

Gym Plan
Serverless?
• Code focussed
• Asynchronous
• Ephemeral
• Stateless
• “Infinitely” scaleable
“Serverless”
• AWS Lambda
• Google Cloud Functions (BETA)
• Azure Functions
“Serverless”
👍 Price
• Cheap (many workloads)
• Don’t pay for idle time
• Compute power in 100ms increments
• Don’t over provision
👍 Available
• and regional
👍 Security
• Fine grained

• Who/what invokes

• What runtime can do/access

• Ephemeral, read-only environments

• API Throttling
👍 Easy
• Easy to write

• Do you even code? Maybe not.

• Hard to debug? Maybe.

• Hard to manage and deploy? Not anymore.
Anything
Invocation
Objects
Data
HTTP
IoT
Email
Time
Demo!
Lambda Lifecycle
Event
Response
Code
Resources
Demo!
–You
“This is tedious.”
Apex
• Build, deploy, and manage Lambda functions with ease
• Non-native languages
• Environments and versions
• Infrastructure management using Terraform
• Metrics, logs, and cost analysis
Demo!
Up
• “Deploy infinitely scalable serverless apps, APIs, and static
websites in seconds”
• Write “vanilla” HTTP servers
• Built-in middleware
• Encrypted env vars (pro)
• Alerting (pro)
• Active warming (pro)
Demo!
Up
API Gateway Lambda
Up Proxy
Go

Binary
CloudWatch
Internet
Final demo!
Beware!
• DB connections / IP addresses
• No more Go concurrency
• Use the correct tool
Recap
• Learn nuances
• Don’t attempt to manage in the AWS dashboard
• Roll your own? (AWS CLI, CloudFormation, Terraform, SAM)
• Apex for FaaS
• Up for web applications
• Try today!
Going Further
• You’ll want to do more and start managing resources together
• AWS Serverless Application Model (SAM)
Resources
• Apex: apex.run / github.com/apex/apex
• Up: up.docs.apex.sh / github.com/apex/up
• Slack Support: chat.apex.sh
Fin.
@mhemmings

Go Serverless - Golang NE February 2018