SlideShare une entreprise Scribd logo
1  sur  26
Télécharger pour lire hors ligne
Guanyu Serverless
Cliff Chao-kuan Lu

Modern Web 16, Taipei
• CC-BY 4.0
• Slideshare
•
• Guanyu
`whoami`
• Cliff Chao-kuan Lu



• 104 



• AWS Community Hero

Certified Pro SA
•
Crash Course: Cloud
• Much has changed since ’11 NIST definition
• Ecosystem with vendors and open source projects
• /w+aaS/

IaaS, PaaS, SaaS, DBaaS, FaaS, BaaS, …
• Micro-services glued with managed services
• Housekeeping services for monitoring, logging, and
stack management
Serverless Architectures
• FaaS / BaaS / Container
• Message-, UI-, or event-
driven
• Stateless
• Cold-start latency
• Cost and Scalability
• Minimal but not no
operation
http://martinfowler.com/articles/serverless.html
AWS Lambda
• Managed Function as a Service
• Ram (CPU), Timeout, Role & VPC
• Node.js, Python, Java, …
• Integration with IAM / 

CloudWatch / Logs
• Unlimited potential*
*standard rates apply
AWS Lambda
• Pull and push model
• Concurrency cap (soft limit)
• No shared memory (shm)
• Potentially shared /tmp
• Burstable / Throttled CPU
Lambda Frameworks
• Apex 

http://apex.run/
• Claudia

https://github.com/claudiajs/claudia
• Serverless Framework (formerly JAWS)

http://serverless.com/
Serverless Framework
• CLI tool for API Gateway / Lambda
• Written in Node.js
• Supports Node.js, Python & Java
• Deploy to regions and stages
• Fast-moving open-sourced project
Serverless v0.5
• Leverage API Gateway templates and mappings
• Run lambda program remotely or locally
• Manage IAM Role with CFN, 

API Gateway and Lambda via API
• Plugins available
Migrating to@1.0.0-beta
• Manage IAM Role, API Gateway, Lambda with CFN
• Abstract away API Gateway templates
• Move metadata to S3
• Functions can share the same folder
• Plugin API changed…
Serverless Will …
• Support `environments` in Function body
• Share API Gateway / Lambda between stages
• Encrypt metadata with KMS
• Enhance tooling and docs for Plugin dev
• Resurrect vendor support
But, I Need More …
• Control

• Flexibility

• Power
Introducing Guanyu
• Sophos-AV (free) as a Service

• Express / Node.js

• ~300MB Memory 

per scanning process

• Binary size ~1GB 

• 6-10s per object scan
https://github.com/clifflu/guanyu-docker
AWS Elastic Container Service
• Yet another Docker scheduler
• Native monitoring, logging, and
authorisation
• Flexible privilege control with host
and task roles
• Supports AWS Application Load
Balancing
Application Load Balancing
• GA August ’16, extends ELB
• Content-based routing
• HTTP/2 and WebSocket support
• Dynamic ports
AWS Elastic Container Service
• Prepare EC2 for ECS
• Okay-ish data persistence with EBS / EFS
• Lacks transparent inter-container traffic encryption
• Promotes [LB -> Container] in every tier
Guanyu Features
• Token-based authentication

• Result caching with memory,
Redis & DynamoDB

• Highly-Customisable

• MIT License
https://github.com/clifflu/guanyu-docker
Guanyu in AWS
• ECS on top of AutoScaling Group
• Supports external cache with Redis & DynamoDB
• Dynamic port behind ALB
• Track logs in CloudWatch Logs
• Periodic health check with ALB
Guanyu
• Lacks one-click deploy
• Immature cache mechanism
• TTL
• Edge cases
• PR Welcome !
Projects
• Guanyu

https://github.com/clifflu/guanyu-docker
• Serverless ModernWeb ’16

https://github.com/clifflu/serverless-modernweb-16
• Tools (tools.clifflu.net)

https://github.com/clifflu/tools.clifflu.net
Questions ?
Thank You !

Contenu connexe

Tendances

Tendances (20)

Meetup #3: Migrate a fast scale system to AWS
Meetup #3: Migrate a fast scale system to AWSMeetup #3: Migrate a fast scale system to AWS
Meetup #3: Migrate a fast scale system to AWS
 
Meetup #3: Migrating an Oracle Application from on-premise to AWS
Meetup #3: Migrating an Oracle Application from on-premise to AWSMeetup #3: Migrating an Oracle Application from on-premise to AWS
Meetup #3: Migrating an Oracle Application from on-premise to AWS
 
Overcoming 5 Common Docker Challenges: How We Do It at RightScale
Overcoming 5 Common Docker Challenges: How We Do It at RightScaleOvercoming 5 Common Docker Challenges: How We Do It at RightScale
Overcoming 5 Common Docker Challenges: How We Do It at RightScale
 
Project Sherpa: How RightScale Went All in on Docker
Project Sherpa: How RightScale Went All in on DockerProject Sherpa: How RightScale Went All in on Docker
Project Sherpa: How RightScale Went All in on Docker
 
DevOpsCon Cloud Workshop
DevOpsCon Cloud Workshop DevOpsCon Cloud Workshop
DevOpsCon Cloud Workshop
 
Sas 2015 event_driven
Sas 2015 event_drivenSas 2015 event_driven
Sas 2015 event_driven
 
Docker in the Cloud
Docker in the CloudDocker in the Cloud
Docker in the Cloud
 
Microservices Using Docker Containers for Magento 2
Microservices Using Docker Containers for Magento 2Microservices Using Docker Containers for Magento 2
Microservices Using Docker Containers for Magento 2
 
Serverless
ServerlessServerless
Serverless
 
Brendon Foxen (Channel 4) - Speeding up Software Delivery at Channel 4
Brendon Foxen (Channel 4) - Speeding up Software Delivery at Channel 4Brendon Foxen (Channel 4) - Speeding up Software Delivery at Channel 4
Brendon Foxen (Channel 4) - Speeding up Software Delivery at Channel 4
 
NDev Talk - Serverless Design Patterns
NDev Talk - Serverless Design PatternsNDev Talk - Serverless Design Patterns
NDev Talk - Serverless Design Patterns
 
Serverless Framework (2018)
Serverless Framework (2018)Serverless Framework (2018)
Serverless Framework (2018)
 
Matt Chung (Independent) - Serverless application with AWS Lambda
Matt Chung (Independent) - Serverless application with AWS Lambda Matt Chung (Independent) - Serverless application with AWS Lambda
Matt Chung (Independent) - Serverless application with AWS Lambda
 
Moving to microservices – a technology and organisation transformational journey
Moving to microservices – a technology and organisation transformational journeyMoving to microservices – a technology and organisation transformational journey
Moving to microservices – a technology and organisation transformational journey
 
An Introduction to Microservices
An Introduction to MicroservicesAn Introduction to Microservices
An Introduction to Microservices
 
Serving Files In Azure
Serving Files In AzureServing Files In Azure
Serving Files In Azure
 
Kubernetes as Orchestrator for A10 Lightning Controller
Kubernetes as Orchestrator for A10 Lightning ControllerKubernetes as Orchestrator for A10 Lightning Controller
Kubernetes as Orchestrator for A10 Lightning Controller
 
Henrique Rodrigues (NotOnTheHighStreet.com) - Building a Future-Proof Infrast...
Henrique Rodrigues (NotOnTheHighStreet.com) - Building a Future-Proof Infrast...Henrique Rodrigues (NotOnTheHighStreet.com) - Building a Future-Proof Infrast...
Henrique Rodrigues (NotOnTheHighStreet.com) - Building a Future-Proof Infrast...
 
An Azure of Things, a developer’s perspective
An Azure of Things, a developer’s perspectiveAn Azure of Things, a developer’s perspective
An Azure of Things, a developer’s perspective
 
Owain Perry (Just Giving) - Continuous Delivery of Windows Micro-Services in ...
Owain Perry (Just Giving) - Continuous Delivery of Windows Micro-Services in ...Owain Perry (Just Giving) - Continuous Delivery of Windows Micro-Services in ...
Owain Perry (Just Giving) - Continuous Delivery of Windows Micro-Services in ...
 

En vedette

En vedette (13)

Running Docker clusters on AWS (November 2016)
Running Docker clusters on AWS (November 2016)Running Docker clusters on AWS (November 2016)
Running Docker clusters on AWS (November 2016)
 
那些 re:Invent 不怎麼技術的事
那些 re:Invent 不怎麼技術的事那些 re:Invent 不怎麼技術的事
那些 re:Invent 不怎麼技術的事
 
Interview Quiz w/o Server
Interview Quiz w/o ServerInterview Quiz w/o Server
Interview Quiz w/o Server
 
不談 IAM
不談 IAM不談 IAM
不談 IAM
 
Modern Web 2016: Using Golang to build a smart IM Bot
Modern Web 2016: Using Golang to build a smart IM Bot Modern Web 2016: Using Golang to build a smart IM Bot
Modern Web 2016: Using Golang to build a smart IM Bot
 
Scaling on AWS for the First 10 Million Users (ARC206) | AWS re:Invent 2013
Scaling on AWS for the First 10 Million Users (ARC206) | AWS re:Invent 2013Scaling on AWS for the First 10 Million Users (ARC206) | AWS re:Invent 2013
Scaling on AWS for the First 10 Million Users (ARC206) | AWS re:Invent 2013
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless Cloud
 
AWS Solutions Architect 準備心得
AWS Solutions Architect 準備心得AWS Solutions Architect 準備心得
AWS Solutions Architect 準備心得
 
以AWS Lambda與Amazon API Gateway打造無伺服器後端
以AWS Lambda與Amazon API Gateway打造無伺服器後端以AWS Lambda與Amazon API Gateway打造無伺服器後端
以AWS Lambda與Amazon API Gateway打造無伺服器後端
 
快快樂樂學會 Angular 2 網站開發框架 (Modern Web 2016)
快快樂樂學會 Angular 2 網站開發框架 (Modern Web 2016)快快樂樂學會 Angular 2 網站開發框架 (Modern Web 2016)
快快樂樂學會 Angular 2 網站開發框架 (Modern Web 2016)
 
Function as a Service
Function as a ServiceFunction as a Service
Function as a Service
 
無伺服器架構和Containers on AWS入門
無伺服器架構和Containers on AWS入門 無伺服器架構和Containers on AWS入門
無伺服器架構和Containers on AWS入門
 
AWS電商和零售業解決方案介紹
AWS電商和零售業解決方案介紹AWS電商和零售業解決方案介紹
AWS電商和零售業解決方案介紹
 

Similaire à Intro to Serverless

Similaire à Intro to Serverless (20)

Microservices Manchester: Serverless Architectures By Rafal Gancarz
Microservices Manchester: Serverless Architectures By Rafal GancarzMicroservices Manchester: Serverless Architectures By Rafal Gancarz
Microservices Manchester: Serverless Architectures By Rafal Gancarz
 
從劍宗到氣宗 - 談AWS ECS與Serverless最佳實踐
從劍宗到氣宗  - 談AWS ECS與Serverless最佳實踐從劍宗到氣宗  - 談AWS ECS與Serverless最佳實踐
從劍宗到氣宗 - 談AWS ECS與Serverless最佳實踐
 
How Serverless Changes DevOps
How Serverless Changes DevOpsHow Serverless Changes DevOps
How Serverless Changes DevOps
 
Introduction to AWS
Introduction to AWSIntroduction to AWS
Introduction to AWS
 
AWS 201 - A Walk through the AWS Cloud: What's New with AWS
AWS 201 - A Walk through the AWS Cloud: What's New with AWSAWS 201 - A Walk through the AWS Cloud: What's New with AWS
AWS 201 - A Walk through the AWS Cloud: What's New with AWS
 
Deep Dive on AWS Lambda - January 2017 AWS Online Tech Talks
Deep Dive on AWS Lambda - January 2017 AWS Online Tech TalksDeep Dive on AWS Lambda - January 2017 AWS Online Tech Talks
Deep Dive on AWS Lambda - January 2017 AWS Online Tech Talks
 
Best of re:Invent
Best of re:InventBest of re:Invent
Best of re:Invent
 
The Best of re:invent 2016
The Best of re:invent 2016The Best of re:invent 2016
The Best of re:invent 2016
 
Aws learning sessoin_bm
Aws learning sessoin_bmAws learning sessoin_bm
Aws learning sessoin_bm
 
AWS August Webinar Series - Services Overview
AWS August Webinar Series - Services Overview AWS August Webinar Series - Services Overview
AWS August Webinar Series - Services Overview
 
AWS Distilled
AWS DistilledAWS Distilled
AWS Distilled
 
Amazon Webservices for Java Developers - UCI Webinar
Amazon Webservices for Java Developers - UCI WebinarAmazon Webservices for Java Developers - UCI Webinar
Amazon Webservices for Java Developers - UCI Webinar
 
Un problème 10 solutions : Azure Fighter
Un problème 10 solutions : Azure FighterUn problème 10 solutions : Azure Fighter
Un problème 10 solutions : Azure Fighter
 
What are clouds made from
What are clouds made fromWhat are clouds made from
What are clouds made from
 
Implementing FaaS on Kubernetes using Kubeless
Implementing FaaS on Kubernetes using KubelessImplementing FaaS on Kubernetes using Kubeless
Implementing FaaS on Kubernetes using Kubeless
 
Session 1 IaaS, PaaS, SaaS Overview
Session 1   IaaS, PaaS, SaaS OverviewSession 1   IaaS, PaaS, SaaS Overview
Session 1 IaaS, PaaS, SaaS Overview
 
AWS Black Belt Tips
AWS Black Belt TipsAWS Black Belt Tips
AWS Black Belt Tips
 
AWS Black Belt Tips
AWS Black Belt TipsAWS Black Belt Tips
AWS Black Belt Tips
 
Centralizing Kubernetes and Container Operations
Centralizing Kubernetes and Container OperationsCentralizing Kubernetes and Container Operations
Centralizing Kubernetes and Container Operations
 
Better, faster, cheaper infrastructure with apache cloud stack and riak cs redux
Better, faster, cheaper infrastructure with apache cloud stack and riak cs reduxBetter, faster, cheaper infrastructure with apache cloud stack and riak cs redux
Better, faster, cheaper infrastructure with apache cloud stack and riak cs redux
 

Plus de Cliff Chao-kuan Lu

Plus de Cliff Chao-kuan Lu (6)

EC2 Spot in 104
EC2 Spot in 104EC2 Spot in 104
EC2 Spot in 104
 
Serverless 網站監控
Serverless 網站監控Serverless 網站監控
Serverless 網站監控
 
Lessons Learnt from Guanyu
Lessons Learnt from GuanyuLessons Learnt from Guanyu
Lessons Learnt from Guanyu
 
Networking in the cloud
Networking in the cloudNetworking in the cloud
Networking in the cloud
 
Health, Platform, In The Cloud
Health, Platform, In The CloudHealth, Platform, In The Cloud
Health, Platform, In The Cloud
 
無障礙網頁
無障礙網頁無障礙網頁
無障礙網頁
 

Dernier

CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
masabamasaba
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 

Dernier (20)

SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 

Intro to Serverless

  • 1. Guanyu Serverless Cliff Chao-kuan Lu Modern Web 16, Taipei
  • 2. • CC-BY 4.0 • Slideshare • • Guanyu
  • 3. `whoami` • Cliff Chao-kuan Lu
 • 104 
 • AWS Community Hero
 Certified Pro SA •
  • 4. Crash Course: Cloud • Much has changed since ’11 NIST definition • Ecosystem with vendors and open source projects • /w+aaS/
 IaaS, PaaS, SaaS, DBaaS, FaaS, BaaS, … • Micro-services glued with managed services • Housekeeping services for monitoring, logging, and stack management
  • 5. Serverless Architectures • FaaS / BaaS / Container • Message-, UI-, or event- driven • Stateless • Cold-start latency • Cost and Scalability • Minimal but not no operation http://martinfowler.com/articles/serverless.html
  • 6. AWS Lambda • Managed Function as a Service • Ram (CPU), Timeout, Role & VPC • Node.js, Python, Java, … • Integration with IAM / 
 CloudWatch / Logs • Unlimited potential* *standard rates apply
  • 7. AWS Lambda • Pull and push model • Concurrency cap (soft limit) • No shared memory (shm) • Potentially shared /tmp • Burstable / Throttled CPU
  • 8. Lambda Frameworks • Apex 
 http://apex.run/ • Claudia
 https://github.com/claudiajs/claudia • Serverless Framework (formerly JAWS)
 http://serverless.com/
  • 9. Serverless Framework • CLI tool for API Gateway / Lambda • Written in Node.js • Supports Node.js, Python & Java • Deploy to regions and stages • Fast-moving open-sourced project
  • 10. Serverless v0.5 • Leverage API Gateway templates and mappings • Run lambda program remotely or locally • Manage IAM Role with CFN, 
 API Gateway and Lambda via API • Plugins available
  • 11.
  • 12.
  • 13. Migrating to@1.0.0-beta • Manage IAM Role, API Gateway, Lambda with CFN • Abstract away API Gateway templates • Move metadata to S3 • Functions can share the same folder • Plugin API changed…
  • 14. Serverless Will … • Support `environments` in Function body • Share API Gateway / Lambda between stages • Encrypt metadata with KMS • Enhance tooling and docs for Plugin dev • Resurrect vendor support
  • 15. But, I Need More … • Control • Flexibility • Power
  • 16. Introducing Guanyu • Sophos-AV (free) as a Service • Express / Node.js • ~300MB Memory 
 per scanning process • Binary size ~1GB • 6-10s per object scan https://github.com/clifflu/guanyu-docker
  • 17. AWS Elastic Container Service • Yet another Docker scheduler • Native monitoring, logging, and authorisation • Flexible privilege control with host and task roles • Supports AWS Application Load Balancing
  • 18. Application Load Balancing • GA August ’16, extends ELB • Content-based routing • HTTP/2 and WebSocket support • Dynamic ports
  • 19. AWS Elastic Container Service • Prepare EC2 for ECS • Okay-ish data persistence with EBS / EFS • Lacks transparent inter-container traffic encryption • Promotes [LB -> Container] in every tier
  • 20. Guanyu Features • Token-based authentication • Result caching with memory, Redis & DynamoDB • Highly-Customisable • MIT License https://github.com/clifflu/guanyu-docker
  • 21. Guanyu in AWS • ECS on top of AutoScaling Group • Supports external cache with Redis & DynamoDB • Dynamic port behind ALB • Track logs in CloudWatch Logs • Periodic health check with ALB
  • 22.
  • 23. Guanyu • Lacks one-click deploy • Immature cache mechanism • TTL • Edge cases • PR Welcome !
  • 24. Projects • Guanyu
 https://github.com/clifflu/guanyu-docker • Serverless ModernWeb ’16
 https://github.com/clifflu/serverless-modernweb-16 • Tools (tools.clifflu.net)
 https://github.com/clifflu/tools.clifflu.net