Preparing For a Future Microservices Journey Susanne Kaiser - - PowerPoint PPT Presentation
Preparing For a Future Microservices Journey Susanne Kaiser - - PowerPoint PPT Presentation
Preparing For a Future Microservices Journey Susanne Kaiser Independent Tech Consultant @suksr @suksr @suksr @suksr Source: http://www.thomasthwaites.com @suksr @suksr Source: http://www.thomasthwaites.com @suksr @suksr Data Store
@suksr
@suksr
@suksr Source: http://www.thomasthwaites.com
@suksr
@suksr Source: http://www.thomasthwaites.com
@suksr
@suksr
@suksr
Data Store
Data Store
@suksr
Config./Setup Maintenance Integration
Hardware O/S Virtualization Container Runtime
@suksr
API Hardware O/S Virtualization Container Runtime
@suksr
API Hardware O/S Virtualization Container Runtime
@suksr
API API Integration
API Hardware O/S Virtualization Container Runtime
@suksr
API API Security
API API API Service Discovery
- 1. Register
- 3. Connect
- 2. Discover
Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery Load-Balancer Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery API Timeout-Handling Hardware O/S Virtualization Container Runtime
@suksr
Load-Balancer
API API API Service Discovery API Timeout-Handling Retries Hardware O/S Virtualization Container Runtime
@suksr
Load-Balancer
API API API Service Discovery API Timeout-Handling Retries Idempotency Hardware O/S Virtualization Container Runtime
@suksr
Load-Balancer
API API API Service Discovery API Timeout-Handling Retries Bulk- heads Idempotency Hardware O/S Virtualization Container Runtime
@suksr
Load-Balancer
API API API Service Discovery API Timeout-Handling Retries Bulk- Heads Circuit Breaker Idempotency Hardware O/S Virtualization Container Runtime
@suksr
Load-Balancer
API API API Service Discovery API Timeout-Handling Retries Bulk- heads Circuit Breaker Idempotency Message Broker Hardware O/S Virtualization Container Runtime
@suksr
Load-Balancer
API API API Service Discovery Load-Balancer API Timeout-Handling Retries Bulk- heads Circuit Breaker Idempotency Message Broker API-Gateway Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery API Timeout-Handling Retries Bulk- heads Idempotency Message Broker API-Gateway Circuit Breaker Config-Mngmt. Hardware O/S Virtualization Container Runtime
@suksr
Load-Balancer
API API API Service Discovery API Timeout-Handling Retries Bulk- heads Idempotency Message Broker API-Gateway Circuit Breaker Config-Mngmt. Monitoring Log Aggreation Metrics Distributed Tracing Health Checks Hardware O/S Virtualization Container Runtime
@suksr
Load-Balancer
API API API Service Discovery API Timeout-Handling Retries Bulk- heads Idempotency Message Broker API-Gateway Circuit Breaker Config-Mngmt. Monitoring Log Aggreation Metrics Distributed Tracing Health Checks SCM
Checkout Test Build
CI/CD Pipeline
Deploy
Hardware O/S Virtualization Container Runtime
@suksr
Load-Balancer
Recovery API API API Service Discovery API Timeout-Handling Retries Bulk- heads Idempotency Message Broker API-Gateway Circuit Breaker Config-Mngmt. Monitoring Log Aggreation Metrics Distributed Tracing Health Checks SCM
Checkout Test Build
CI/CD Pipeline
Deploy
Hardware O/S Virtualization Container Runtime Backup
@suksr
Load-Balancer Scaling
µService
@suksr
Hardware Data Store API API-Gateway Service Discovery Load-Balancer Message Broker Timeout-Handling Retries Idempotency Bulkheads Circuit Breaker Config-Mngmt. Monitoring Log Aggreation Metrics Distributed Tracing Health Checks SCM O/S Virtualization Container Runtime
Checkout Test Build
CI/CD Pipeline
Deploy
µService Backup Recovery
@suksr
Scaling Maintenance Integration Security
Hardware Data Store API API-Gateway
Service Discovery Load-Balancer
Message Broker Timeout-Handling Retries Idempotency Bulkheads Circuit Breaker Config-Mngmt. Monitoring Log Aggreation Metrics Distributed Tracing Health Checks
SCM
O/S Virtualization Container Runtime Checkout Test Build
CI/CD Pipeline
Deploy Backup Recovery
@suksr
Complexities
Source: http://www.thomasthwaites.com/folio5/wp-content/uploads/2010/10/Toaster_Project1-PhotoCredit-Daniel_Alexanderx630.jpg
@suksr Source: http://www.thomasthwaites.com
How can a small team handle infrastructure complexities and deliver user & business value?
@suksr
Focus on Core Domain Offload commodities
@suksr
Core Domain Focus User Value
@suksr
User Needs Build in-house
@suksr
Offloading commodities Business Needs Business Value Outsource to utility suppliers Core Domain Focus User Value User Needs Build in-house
@suksr
Software Delivery Performance Productivity Profitability Market Share
@suksr
CTO at Just Software @JustSocialApps
Susanne Kaiser … who?
Independent Tech Consultant @suksr Co-Organizer @microXchg, Berlin Program committee ServerlessDays, Hamburg @ServerlessHAM Program committee MicroCPH, Copenhagen @MicroCPH Program committee & track host QCon, New York @qconnewyork
What to build in-house? What to outsource?
@suksr
Wardley Maps
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Unc ncha harted Ind ndus ustrialised ed Chaotic Uncertain Unpredictable Changing ... Ordered Known Measured Stable ...
By Simon Wardley
P
- s
i t i
- n
Movement
Visualisation of a value chain’s evolution
@suksr
Who are your users?
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Value Chain
@suksr
Who are your users? What are your users’ needs?
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Value Chain
@suksr
Who are your users? What are your users’ needs? What are the components/activities to fulfill your users’ needs incl. dependencies?
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Value Chain
P
- s
i t i
- n
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Evolution
Wardley Maps
Landscape
Components along evolution axes
Genesis Custom-Built Product (+rental) Commodity (+utility) P
- s
i t i
- n
Movement
@suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Everything evolves
Past Current Future
Supply Competition Demand Competition
Wardley Maps
Patterns
Uncharted Industrialised @suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Past Current Future
Characteristics change
Uncharted Undefined market Uncertain Unpredictable Rare Poorly understood Forming market Learning on use Increasing understanding Slowly increasing consumption Rapid increases in learning Growing market Learning on operation Increasing education Rapidly increasing consumption Rapid increase in use Mature market Known / accepted Stable Widespread and stabilising Commonly understood (in term of use) Industrialised
Wardley Maps
Patterns
@suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Everything evolves
Past Current Future
Continuous adaption
Wardley Maps
Patterns
@suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Efficiency enables innovation
Uncharted Industrialised
Wardley Maps
Patterns
@suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Efficiency enables innovation
Uncharted Industrialised
Wardley Maps
Patterns
@suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Efficiency enables innovation
Uncharted Industrialised
Wardley Maps
Patterns
@suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Efficiency enables innovation
Uncharted Industrialised
Wardley Maps
Patterns
@suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Past Current
Success breeds inertia
Wardley Maps
Patterns
@suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Success breeds inertia
Past Current
Inertia can kill an organisation
Wardley Maps
Patterns
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule Speakers Feedback
Focus on user needs
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule Schedule Management Speaker Management Survey Platform Speakers Feedback Session Rating Ticketing Platform
P
- s
i t i
- n
Understand the involved components and their dependencies (position)
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule Schedule Management Speaker Management Survey Platform Speakers Feedback Session Rating Ticketing Platform
P
- s
i t i
- n
Data Storage
Understand the involved components and their dependencies (position)
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule Schedule Management Speaker Management Survey Platform Speakers Feedback Session Rating Ticketing Platform Search Engine
P
- s
i t i
- n
Data Storage
Understand the involved components and their dependencies (position)
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule Schedule Management Speaker Management Survey Platform Speakers Feedback Session Rating Ticketing Platform Search Engine Compute Platform
P
- s
i t i
- n
Data Storage
Understand the involved components and their dependencies (position)
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule Schedule Management Speaker Management Survey Platform Speakers Feedback Session Rating Ticketing Platform Search Engine Compute Platform VM
P
- s
i t i
- n
Data Storage
Understand the involved components and their dependencies (position)
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule Mgmnt. Speaker Mgmnt. Survey Platform
Speakers Feedback
Session Rating Ticketing Platform
Evolution
Movement
Plot components along evolution axes (movement)
@suksr
Data Storage Search Engine Compute Platform VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule Mgmnt. Speaker Mgmnt. Survey Platform
Speakers Feedback
Session Rating Ticketing Platform
Evolution
Movement
@suksr
Data Storage Search Engine Compute Platform VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Discuss & plan
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution
Movement
@suksr
Data Storage Search Engine Compute Platform VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Discuss & plan
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution
Movement
@suksr
Data Storage Search Engine Compute Platform VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Use appropriate methods per evolution stage
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution
Movement
@suksr
Data Storage Search Engine Compute Platform VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Use appropriate methods per evolution stage
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution
Movement
@suksr
Data Storage Search Engine Compute Platform VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Use appropriate methods per evolution stage
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Infrastructure & operational complexities
Compute Platform VM Data Storage Search Engine Data Storage
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Data related components & activities
Compute Platform VM Data Storage Search Engine
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Data Storage Search Engine Compute Platform VM
Service related components & activities
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Data Storage Search Engine Compute Platform VM
Service interaction related components & activities
command query
Request-Driven
@suksr
Service Interactions
API API
command query
Request-Driven
Message Broker publish subscribe
Event-Driven
@suksr
Service Interactions
API API
command query Message Broker publish subscribe command query
Request-Driven Hybrid
Message Broker publish subscribe
Event-Driven
@suksr
Service Interactions
API API API
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Data Storage Search Engine Compute Platform VM
Request-driven related components & activities
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Compute Platform VM
Event-driven & hybrid related components & activities
Message Broker Search Engine Data Storage
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Compute Platform VM Message Broker Search Engine Data Storage
Discuss & plan
Core Domain No Core Domain
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Compute Platform VM Message Broker Search Engine Data Storage
Discuss & plan Open Source Software
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Data Storage Search Engine Message Broker OSS
Example
Open Source Software
VM Compute Platform
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Data Storage Search Engine Message Broker OSS VM
Discuss & plan Offload to cloud hosted services
Compute Platform
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
OSS DB aaS SE aaS MB aaS Compute Platform VM
Offload to cloud hosted services
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
OSS DB aaS SE aaS MB aaS Compute Platform VM
Discuss & plan Offload to container
- rchestration platform
Managed by YOU Managed by Platform Hardware O/S Virtualization Container Runtime O/S Orchestration µService Container Runtime µService Service Discovery Load Balancer Config-Mngmt. Monitoring Log Aggreation Health Checks Recovery Scaling
@suksr
Container Orchestration
API Gateway
Containerized Microservices
Container Orchestration
Basic components of Kubernetes
Pod Volume
Container Orchestration
Basic components of Kubernetes Containerized Microservices
Containerized Microservice Pod Service Volume
Container Orchestration
Basic components of Kubernetes
Containerized Microservice Pod Service Volume
Master Node Worker Node Worker Node
Container Orchestration
Basic components of Kubernetes
Containerized Microservice Pod Service Volume
Deployment Master Node Worker Node Worker Node
Container Orchestration
Deployment Deployment
Basic components of Kubernetes
Containerized Microservice Pod Service Volume
Deployment Master Node Worker Node Worker Node Ingress
Container Orchestration
Deployment Deployment
Basic components of Kubernetes
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
VM DB aaS MB aaS Worker Nodes Master Node OSS Compute Platform SE aaS
Container Orchestration w/ Kubernetes
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
VM DB aaS MB aaS Worker Nodes Master Node OSS Compute Platform SE aaS
Container Orchestration w/ Kubernetes
Pod Deploym. Service Volume Ingress
New Primitives
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
VM DB aaS MB aaS Worker Nodes Master Node OSS Compute Platform SE aaS
Container Orchestration w/ Kubernetes
Pod Deploym. Service Volume Ingress Job Secret Stateful Set Cron Job Config Map Network Policy Persistent Volume Claim Replica Set Daemon Set Horizontal Pod Autoscaler Egress more ...
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
VM DB aaS MB aaS Worker Nodes Master Node OSS SE aaS Container Orchestration
Discuss & plan Offload application networking concerns to a service mesh
Separation Of Concerns
Circuit Breaker Timeout Retries Kubernetes / Service Mesh Sidecar Proxy
Service Mesh Application Networking Concerns
@suksr
Metrics Security Sidecar Proxy Distributed Tracing Log Aggregation
Service Mesh
Components of Istio
Proxy Proxy Microservice Microservice Policy & Telemetry (Mixer) Discovery & Config to Proxies (Pilot) Config (Galley) TLS Certs to Proxies (Citadel)
Data Plane Control Plane
HTTP, gRPC, TCP mTLS
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
VM DB aaS MB aaS Worker Nodes Master Node SE aaS Container Orchestration Virtual Service Destination Rule Gateway Service Entry Policy ServiceRole /
- Binding ClusterRbac
Config
Service Mesh
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
VM DB aaS MB aaS Worker Nodes Master Node SE aaS Container Orchestration Service Mesh
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS
Evolution @suksr
Genesis Custom-Built Product (+rental) Commodity (+utility)
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
VM DB aaS MB aaS Worker Nodes Master Node SE aaS Container Orchestration Service Mesh
Discuss & plan Move to Serverless
Function Event
Event-Driven Workflow
Hardware Data Store O/S Virtualization Container Runtime
Fully Managed By Third Party Ephemeral Function Pay-per-Execution Auto-Scaling Characteristics
@suksr
triggers
Serverless w/ FaaS
Serverless
AWS Building Blocks
Lambda API Gateway SNS SQS DynamoDB Step Functions
Core AWS Serverless Building Blocks
S3 Kinesis CloudWatch Cognito @suksr IAM and more
Serverless
Example Conference Solution Speaker
Submit CfP API Gateway createCfP DynamoDB sendCfPSubmittedEmail
CfP Handling
Serverless
Example Conference Solution Speaker
Submit CfP API Gateway createCfP DynamoDB sendCfPSubmittedEmail S3 updateCfPPicture
CfP Handling
Serverless
Example Conference Solution Speaker Organiser
Submit CfP API Gateway createCfP DynamoDB sendCfPConfirmedEmail Confirm CfP getCfP confirmCfP sendCfPSubmittedEmail S3 updateCfPPicture SNS
CfP Handling Schedule Management
updateTalkDetails
Serverless
Example Conference Solution Speaker Organiser
Submit CfP API Gateway createCfP DynamoDB sendCfPConfirmedEmail Confirm CfP getCfP confirmCfP sendCfPSubmittedEmail S3 updateCfPPicture Create Schedule createSchedule API Gateway SNS DynamoDB updateSearchIndex updateTalkDetails
CfP Handling Schedule Management
Serverless
Example Conference Solution Speaker Organiser Attendee
Submit CfP API Gateway createCfP DynamoDB sendCfPConfirmedEmail Confirm CfP getCfP confirmCfP sendCfPSubmittedEmail S3 updateCfPPicture Create Schedule createSchedule API Gateway SNS DynamoDB updateSearchIndex getSchedule Get Schedule updateTalkDetails
CfP Handling Schedule Management
Serverless
Example Conference Solution Speaker Organiser Attendee
Submit CfP API Gateway createCfP DynamoDB sendCfPConfirmedEmail Confirm CfP getCfP confirmCfP sendCfPSubmittedEmail S3 updateCfPPicture Create Schedule createSchedule API Gateway SNS DynamoDB updateSearchIndex getSchedule Get Schedule updateTalkDetails
CfP Handling Schedule Management
Your code Use/Configure
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS DB Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Function
@suksr
Pub/Sub File Storage API Gateway
Serverless w/ FaaS
SE aaS
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS DynamoDB Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Lambda
@suksr
SNS S3 API Gateway SE aaS
Serverless Application Repository (SAR)
Serverless Component
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS DynamoDB Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Lambda
@suksr
SNS S3 API Gateway SE aaS
Serverless Application Repository (SAR)
Serverless Component
Efficiency enables innovation
Q&A Handling
Q & A
Serverless Infrastructure Providers
@suksr
Fulfill user & business needs Focus on core domain & build in-house Identify & outsource commodities Continuously adapt
@suksr