When engineering organizations adopt microservice architecture, and split their large monolithic applications into hundreds (or thousands) of microservices, one of the biggest challenges they face is the lack of architectural and organizational standardization across their microservice ecosystems.
In this report, author Susan Fowler looks at lessons learned from driving a production-readiness initiative across Uber’s more than one thousand microservices. You’ll explore eight production-readiness requirements that she and her fellow SREs at Uber adopted after countless hours of research inside and outside the company—requirements that apply to every microservice while providing real, quantifiable results: stability, reliability, scalability, fault-tolerance, catastrophe-preparedness, performance, monitoring, and documentation.
This report explains why each of these requirements was specifically chosen.
Providing each microservice team with a set of requirements relevant to their service, and their service alone, simply isn’t scalable given that each microservice is a very small piece of an incredibly large ecosystem. And each standard alone isn’t enough to ensure availability, but together they are. You’ll find out how.
This report is an excerpt of Fowler’s forthcoming book, Production-Ready Microservices, in which she shares standards-based strategies for bringing microservices to a production-ready state.
Table of contents
- 1. Microservices in Production
- Title: Microservices in Production
- Release date: October 2016
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781491972977
You might also like
Head First Design Patterns, 2nd Edition
You know you don’t want to reinvent the wheel, so you look to design patterns—the lessons …
Building Microservices, 2nd Edition
Distributed systems have become more fine-grained as organizations shift from code-heavy monolithic applications to smaller, self-contained …
Software Engineering at Google
Today, software engineers need to know not only how to program effectively but also how to …
Designing Data-Intensive Applications
Data is at the center of many challenges in system design today. Difficult issues need to …