The last two decades have seen evolutions of software architecture—from on-premises to cloud hosted to mass-scaled microservices. While cloud native applications look very different than something we may have built before some of these techniques were well known, at their heart are still long-running, custom-built server applications that orchestrate the flow of requests, data, and logic.
Serverless changes all of this. We no longer build always-on server applications; we rely on events as the agents of flow rather than requests, and the server-side software that we do write may be a small aspect of our system rather than the central hub. Fundamentally, serverless is about choreography of multiple services from multiple teams and vendors—in extreme situations—none of which we have written ourselves.
Mike Roberts (Symphonia) introduces some of the patterns, or “common solutions to recurring problems,” that we are starting to see in the serverless community. Patterns are not necessarily best practices—they are techniques that have worked for many people, but always given certain contextual constraints. Perhaps even more importantly, however, Mike describes how you, your teams, and your organizations can start harvesting your own patterns, while the bigger industry learns more about this exciting new frontier.
This session was recorded at the 2019 O'Reilly Software Architecture Conference in San Jose.
- Title: Serverless architecture patterns: The awkward early years
- Release date: December 2019
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 0636920337577
You might also like
Software Architecture Hour: Mature Microservices
Join us for a special conversation on software architecture with Neal Ford and Sarah Wells, covering …
Software Architecture Hour: Incremental Architecture with Allen Holub
Join us for a special conversation on incremental architecture with Neal Ford and software architect and …
Patterns for persistence and streaming in microservice architectures (sponsored by DataStax)
One of the most challenging aspects of microservice architectures is selecting the right infrastructure to make …
Exposing Agile Architecture
Tools are essential for software development—and they have to be customizable. To learn how to judge …