Our deck provides a critical analysis of serverless technology and our thoughts about its future. We use Emerging Technology Analysis Canvas (ETAC), a framework built to analyze emerging technologies, as the methodology of our study. Based on our analysis, we believe that serverless can significantly impact applications and software development workflows.
Watch our webinar on demand as we discuss this study, our conclusions, and evidence in detail. - https://wso2.com/library/webinars/2019/05/the-future-of-serverless/
2. Complexity of Systems are Increasing
● Both Kubernetes and Service Mesh have complex deployments
○ (in return for more control)
● Microservices
○ Complexity due to many services and distributed nature
○ Needs observability and complex DevOps.
○ Done in return for simpler releases
3. Latency Concerns
● Latency continues to be a problem
○ Although bandwidth has improved, latency has not. Our apps need to think about
latency for years to come. (See [1]).
○ If a web page has four API calls, 60% of users will see the 90th percentile
○ WAN latency = 300X latency within a data center. See [2]
● API adoption is increasing. See [3].
● If your App uses APIs, you will get much better latencies by moving to the
cloud. Due to the same reason, APIs are also best placed in the cloud as
well.
4. Developers are in
Short Supply
Complexity of Systems
Increasing
Supply of Developers are Limited
Software is Eating the World
Kubernetes (Deployment)
Service Mesh (Deployment)
Microservices (Number of Services)
Most
Apps
Move to
the Cloud
Latency Concerns
Most Apps will use at
least one API
Cost Saving
Faster time to market
Agility
Cloud Advantages
Cause Effect
Latency Effects
5. FaaS changes Abstraction
• Before FaaS, although PaaS was there, it is users have to drop
down to IaaS to write glue code and logic
• Amazon Lamda (FaaS) changed this
• FaaS changed the abstraction level, and hide deployment, FT,
Scale complexities.
• Serverless reduces the detail a programmer needs to
understand, expanding potential programmer Pool.
6. What is Serverless?
• Everything = FaaS + Platform Services + Resources
• Definition - Serverless includes FaaS, resources (compute and
storage) as well as a complete execution environment including
platform services providing resource pooling, rapid elasticity,
and measured service (as defined in the NIST cloud computing
definition) in an opaque manner to the user.
7. Forces Driving Serverless
Serverless
Cost Saving, Agility, and
Productivity
Complexity Reduction
Success of the Cloud
Loose Coupling
Lack of Programmers
Privacy
Monopoly/Vendor lock-In
8. Impact: Macro
• Serverless is a natural environment to deploy Microservices
Architecture
• Serverless makes it easier to create APIs and APIs nudges
Apps towards the cloud to avoid latency effects
• A new user in the cloud have a choice of using Serverless vs.
K8s
9. Impact: Micro
• Increases agility: Serverless provides faster time to delivery.
• Lowers platform costs: It provides a true, pay-as-you-go model
by eliminating idle time costs.
• Lowers deployment costs: serverless lowers development costs
by taking over DevOps and monitoring costs.
• Provides cost insights: serverless is metered with fine
granularity, which provides greater insights into managing
costs.
10. Feasibility: Technical Merit
● (+)ve
○ HA & Scale is transparent
○ Make citizen programming easier
○ Polyglot architecture possible
● (-)tive
○ Cold starts and tail latencies
○ EDA is hard
○ Handling state
11. Feasibility: Tools & Ecosystem
• Lack of tooling is a challenge
• We can quickly train existing programmers. Hence, no
significant concerns about skills
13. Risks
● Lack of standards and Vendor Lock-in
○ Kubernetes acts as a portability layer
○ Lock-in happen due to the use of platform services
○ Users have to tradeoff between agility and lock-in
○ Was not a problem with the cloud
● Privacy
○ Against it was not a significant deterrence of the cloud
15. Open Road for Serverless
● We see most new applications will use Serverless within next
three years
● Although the disadvantages and risks we discussed might
reduce the adoption, we believe there are significant use cases
that are not affected by those limitations.
● Shortage of developers will further increase Serverless adoption
(Serverless reduces required skill levels from programmers,
expanding the potential pool of developers).
16. Vendor Lock-in & Standardization
• Vendor Lock-in & Standardization slows down the adoption, but not a
show stopper
• Current Serverless platform market leaders are resisting standardization.
• However, adopting standards may expand the market to a extent that
everyone is better off.
• Standardization can be enforced by governments or significant buyers or
consortia. We believe, standardization, in any form, is net positive and will
significantly hasten the adoption of Serverless.
17. K8s vs. Serverless
● A new app in the cloud have a choice between Serverless vs. Kubernetes
● It is a tradeoff between agility & cost savings vs. portability & control.
● Most new systems would likely to start with Serverless and only move to
Kubernetes when
○ The system has grown complex
○ When portability has becomes a concern
○ Serverless is expensive
● Kubernetes may choose to match Serverless APIs
18. Future of Middleware
• Serverless is replacing most middleware
• To compete with cloud providers middleware will become more
specialized (e.g. become domain specific)
• A new class of middleware can run on top of Serverless or k8s.
• Cloud vendors may choose to embrace middleware running on top of the
clouds to have a richer ecosystem.
• e.g. Microsoft tied to own Windows software and failed
• Apple embraced developers and ecosystem became a mote.
• Integration middleware will continue have on-premise use cases because
parts of systems (legacy) will continue to live off the cloud.
19. Conclusion
• Most of the new Apps are moving to the cloud
• We see most new applications will use Serverless within next
three years
• A new app in the cloud have a choice between Serverless vs.
Kubernetes, which will decide the extent of serverless adoption
20. Read the paper:
A Survey of Serverless: Status Quo and Future Directions
To receive updates to ETAC and ETAC-based emerging technology
analysis, subscribe to our Newsletter at:
https://wso2.com/subscribe/gto