SlideShare a Scribd company logo
Amazingly Simple Serverless Go
September 2017 Golang Meetup
Yun Zhi Lin, Microservices Architect
1
2
3
Why Go + Serverless
(Gopher) Event Driven Architecture
Demo and Examples
Why SLS Golang
Why
People want Golang!
But got .Net Core instead 
Why Serverless Framework?
The most versatile out of all golang enabled serverless libraries
Framework Provider Languages Golang Shim Infrastructure
Apex AWS Node
Golang
Node Partial
GoSparta AWS Golang Node Partial
Serverless
Framework
AWS
Azure
Google
Openwhisk
Kubeless
Python
Node
Java
.Net
Python Full
- Dev friendly
YML
- Ops friendly CF
Secret Sauce – EAWSY Shim
Eawsy’s Shim is 2nd fastest way to run AWS Lambda from cold starts
(Gopher)
Event Driven
Architecture
Life prior to Microservices and Gophers
Mobile Backend
Frontend
Life after Event Driven Microservices, with Gophers!
2 Docker Go MicroServices + 14 Go Lambdas
SSO SCVJAMstack JAMstack
Demo & Examples
Kinesis Event Source
Go code serverless.yml
func DataLogger(
evt *kinesisstreamsevt.Event)(
interface{}, error) {
rs := evt.Records
for r := range rs {
log.Println(r)
}
return evt.String(), nil
}
functions:
logger:
handler:
handler.DataLogger
events:
- stream:
${env:AWS_KINESIS_ARN}
Go Net with API Gateway
Go code serverless.yml
functions:
crud:
handler: handler.Handler
events:
- http:
path: todos
method: post
cors: true
- http:
path: todos
method: get
cors: true
- http:
path: todos/{id}
method: get
cors: true
func setUpMux() *mux.Router {
r := mux.NewRouter()
r.HandleFunc("/todos", create)
.Methods(http.MethodPost)
r.HandleFunc("/todos", list)
.Methods(http.MethodGet)
r.HandleFunc("/todos/{id}", read)
.Methods(http.MethodGet)
…
return r
}
Demo
Credits and Road Map
This library would not be possible without the help of:
• @cristm from HereMaps
• Serverless.com and Eawsy.com
• @flemay from amaysim for the awesome logo
Coming soon:
• dynamodb example with localstack
• Event Gateway and FDK
• Azure integration

More Related Content

PDF
AWS Lambda Containers - bridging the gap between serverless and containers on...
PDF
AWS Community Day Bangkok 2019 - Hello ClaudiaJS
PDF
AWS Community Day Bangkok 2019 - Building & Deploying AWS Lambda with Serverl...
PDF
AWS Community Day Bangkok 2019 - Dev Ops Philosophy Increase Productivity
PDF
AWS Community Day Bangkok 2019 - Build a Serverless Web Application in 30 mins
PPTX
AWS Community Day Bangkok 2019 - DevOps Cost Reduction using Jenkins & AWS Sp...
PPTX
The New era in QA: k6
PDF
Deploying .Net Core Application to AWS ECS Fargate
AWS Lambda Containers - bridging the gap between serverless and containers on...
AWS Community Day Bangkok 2019 - Hello ClaudiaJS
AWS Community Day Bangkok 2019 - Building & Deploying AWS Lambda with Serverl...
AWS Community Day Bangkok 2019 - Dev Ops Philosophy Increase Productivity
AWS Community Day Bangkok 2019 - Build a Serverless Web Application in 30 mins
AWS Community Day Bangkok 2019 - DevOps Cost Reduction using Jenkins & AWS Sp...
The New era in QA: k6
Deploying .Net Core Application to AWS ECS Fargate

What's hot (17)

PDF
Rescale New Feature: Bring Your Own VPC
PPTX
Integrating API Gateway and internal ELB
PPTX
從劍宗到氣宗 - 談AWS ECS與Serverless最佳實踐
PDF
Intro to js august 31
PPTX
Practical Cloud
PPTX
Serverless Architecture
PPTX
Aws developer meetup 24 feb-18 noida
PPTX
Serverless Workshop - Tomato Restaurant Rating App
PPTX
Introduction to Azure Functions - Tutorial
PPTX
.Net Development on AWS
PPTX
Using Azure Functions for Integration
PPTX
Developing serverless applications with .NET on AWS
PDF
Serverless Computing
PDF
Serverless Architecture on AWS
PDF
Introduction to AWS Lambda with Python
PPTX
Azure Functions Real World Examples
PPTX
BUILD, TEST & DEPLOY .NET CORE APPS IN AZURE DEVOPS
Rescale New Feature: Bring Your Own VPC
Integrating API Gateway and internal ELB
從劍宗到氣宗 - 談AWS ECS與Serverless最佳實踐
Intro to js august 31
Practical Cloud
Serverless Architecture
Aws developer meetup 24 feb-18 noida
Serverless Workshop - Tomato Restaurant Rating App
Introduction to Azure Functions - Tutorial
.Net Development on AWS
Using Azure Functions for Integration
Developing serverless applications with .NET on AWS
Serverless Computing
Serverless Architecture on AWS
Introduction to AWS Lambda with Python
Azure Functions Real World Examples
BUILD, TEST & DEPLOY .NET CORE APPS IN AZURE DEVOPS
Ad

Similar to Amazingly Simple Serverless Go (8)

ODP
Go lambda-presentation
PDF
Serverless Go at BuzzBird
PPTX
Cloudsolutionday 2016: Getting Started with Severless Architecture
PDF
Intro to Serverless
PDF
Start Serverless with Golang!
PPTX
(Don't) Go Tracing Server Calls
PDF
Building RESTful Services With Go and MongoDB
PPTX
Serverless Architecture
Go lambda-presentation
Serverless Go at BuzzBird
Cloudsolutionday 2016: Getting Started with Severless Architecture
Intro to Serverless
Start Serverless with Golang!
(Don't) Go Tracing Server Calls
Building RESTful Services With Go and MongoDB
Serverless Architecture
Ad

More from Yun Zhi Lin (11)

PDF
Applied AI, Open Banking and Continuous Innovation the Easy Way - AI Days Mel...
PDF
Art of Serverless Business Value - Serverless Days Sydney 2019
PDF
Anticorrupting the Enterprise - Serverlessconf NYC 2017
PDF
Financial Forecasting using Recurrent Neural Network, Social Media and Cloud
PPTX
Easy Serverless Golang
PPTX
4 Success stories in 3 years - A Docker Production Journey
PPTX
Nano Segmentation - A Docker Security Journey
PDF
Dropwizard and Friends
PDF
A Tale of Contemporary Software
PDF
Microservices and Friends
PDF
Dropwizard with MongoDB and Google Cloud
Applied AI, Open Banking and Continuous Innovation the Easy Way - AI Days Mel...
Art of Serverless Business Value - Serverless Days Sydney 2019
Anticorrupting the Enterprise - Serverlessconf NYC 2017
Financial Forecasting using Recurrent Neural Network, Social Media and Cloud
Easy Serverless Golang
4 Success stories in 3 years - A Docker Production Journey
Nano Segmentation - A Docker Security Journey
Dropwizard and Friends
A Tale of Contemporary Software
Microservices and Friends
Dropwizard with MongoDB and Google Cloud

Recently uploaded (20)

PPTX
A Presentation on Artificial Intelligence
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Encapsulation theory and applications.pdf
PDF
Machine learning based COVID-19 study performance prediction
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
Machine Learning_overview_presentation.pptx
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PPTX
Spectroscopy.pptx food analysis technology
PPT
Teaching material agriculture food technology
PDF
Electronic commerce courselecture one. Pdf
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PPTX
1. Introduction to Computer Programming.pptx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
A Presentation on Artificial Intelligence
SOPHOS-XG Firewall Administrator PPT.pptx
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Encapsulation theory and applications.pdf
Machine learning based COVID-19 study performance prediction
A comparative analysis of optical character recognition models for extracting...
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Unlocking AI with Model Context Protocol (MCP)
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Machine Learning_overview_presentation.pptx
Group 1 Presentation -Planning and Decision Making .pptx
Spectroscopy.pptx food analysis technology
Teaching material agriculture food technology
Electronic commerce courselecture one. Pdf
Programs and apps: productivity, graphics, security and other tools
NewMind AI Weekly Chronicles - August'25-Week II
Assigned Numbers - 2025 - Bluetooth® Document
1. Introduction to Computer Programming.pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...

Amazingly Simple Serverless Go

  • 1. Amazingly Simple Serverless Go September 2017 Golang Meetup Yun Zhi Lin, Microservices Architect
  • 2. 1 2 3 Why Go + Serverless (Gopher) Event Driven Architecture Demo and Examples
  • 4. People want Golang! But got .Net Core instead 
  • 5. Why Serverless Framework? The most versatile out of all golang enabled serverless libraries Framework Provider Languages Golang Shim Infrastructure Apex AWS Node Golang Node Partial GoSparta AWS Golang Node Partial Serverless Framework AWS Azure Google Openwhisk Kubeless Python Node Java .Net Python Full - Dev friendly YML - Ops friendly CF
  • 6. Secret Sauce – EAWSY Shim Eawsy’s Shim is 2nd fastest way to run AWS Lambda from cold starts
  • 8. Life prior to Microservices and Gophers Mobile Backend Frontend
  • 9. Life after Event Driven Microservices, with Gophers! 2 Docker Go MicroServices + 14 Go Lambdas SSO SCVJAMstack JAMstack
  • 11. Kinesis Event Source Go code serverless.yml func DataLogger( evt *kinesisstreamsevt.Event)( interface{}, error) { rs := evt.Records for r := range rs { log.Println(r) } return evt.String(), nil } functions: logger: handler: handler.DataLogger events: - stream: ${env:AWS_KINESIS_ARN}
  • 12. Go Net with API Gateway Go code serverless.yml functions: crud: handler: handler.Handler events: - http: path: todos method: post cors: true - http: path: todos method: get cors: true - http: path: todos/{id} method: get cors: true func setUpMux() *mux.Router { r := mux.NewRouter() r.HandleFunc("/todos", create) .Methods(http.MethodPost) r.HandleFunc("/todos", list) .Methods(http.MethodGet) r.HandleFunc("/todos/{id}", read) .Methods(http.MethodGet) … return r }
  • 13. Demo
  • 14. Credits and Road Map This library would not be possible without the help of: • @cristm from HereMaps • Serverless.com and Eawsy.com • @flemay from amaysim for the awesome logo Coming soon: • dynamodb example with localstack • Event Gateway and FDK • Azure integration