Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Future of Serverless

Future of Serverless

Our webinar presents 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.

We’ve also made two further observations:

Limitations, such as tail latencies and cold starts, are not deal breakers for adoption. There are significant use cases that can work with existing serverless technologies despite these limitations.
We see a significant gap in required tooling and IDE support, best practices, and architecture blueprints. With proper tooling, it is possible to train existing enterprise developers to program with serverless. If proper tools are forthcoming, we believe serverless can cross the chasm in 3-5 years.
A detailed analysis can be found here: A Survey of Serverless: Status Quo and Future Directions. Join our webinar as we discuss this study, our conclusions, and evidence in detail.

Avatar for Srinath Perera

Srinath Perera

May 08, 2019

More Decks by Srinath Perera

Other Decks in Programming

Transcript

  1. 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 !2
  2. !3 • 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. Latency Concerns
  3. !4

  4. 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. !5
  5. What is Serverless? • Everything = FaaS + Platform Services

    + Resources !6 • 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.
  6. 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 !8
  7. 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. !9
  8. 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 !10
  9. Feasibility: Tools & Ecosystem • Lack of tooling is a

    challenge • We can quickly train existing programmers. Hence, no significant concerns about skills !11
  10. Feasibility: Friction • Opinionated • Limited OS and platform level

    configurations available • Need rewrite to move systems !12
  11. 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 !13
  12. 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). !15
  13. 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. !16
  14. 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 !17
  15. 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 !18
  16. 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 !19
  17. 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. Thanks for reading!!