Watching note for Serverless: the Future of Software Architecture • Peter Sbarski
cross reference:
Designing distributed system
Function as Service (execute custom code)
Backend as a Service (3rd-party services)
cross reference:
Designing distributed system
Function as Service (execute custom code)
Backend as a Service (3rd-party services)
Adopt
- Pipelines as code
- APIs as a product
- Decoupling secret management from source code
- Hosting PII data in the EU
- Legacy in a box
- Lightweight architecture decision records
- Progressive web applications
- Prototyping with invision and sketch
- Serverless architecture
e.g
AWS Lambda for compute
S3 for storage
Principles of Serverless Architecture
- Use a code-execution compute service to run code on demand
- Write single-purpose statelesss functions
- Design push-based, event-driver pipelines
- Create thicker, more powerful front ends
- Embrace third party services
Use a code-execution compute service to run code on demand
Do not run on a server.
Focus on function, not application update/upgrade
(e.g patch Apache web server etc.)
Compute as backend:
API-Gateway is needed for REST API
Compute as glue:
Act as Pipeline
Focus on function, not application update/upgrade
(e.g patch Apache web server etc.)
Compute as backend:
API-Gateway is needed for REST API
Compute as glue:
Act as Pipeline
Write single-purpose statelesss functions
Pure function
Only 0 or 1 transformation
Design push-based, event-driver pipelines
One event triggers another event.
e.g
e.g
e.g.
Use websocket, push based.
Create thicker, more powerful front ends
Benefits
- time to market
- scale effortlessly (deal with spikes traffic)
- disruptive cost model
- no more server to manage
- versatile
- lower cost
- less code
- easy to scale and flexible
Cons
- Not for everyone
- Service level and customization
- Vendor lock-in
- Decentralization
Architecture
Go for microservices
Use API-Gateway
https://www.algolia.com/ as search service
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.