SRE with Java Microservices: Patterns for Reliable Microservices in the Enterprise
內容描述
In a microservices architecture, the whole is indeed greater than the sum of its parts. But in practice, individual microservices can inadvertently impact others and alter the end user experience. Effective microservices architectures require standardization on an organizational level with the help of a platform engineering team.
This practical book provides a series of progressive steps that platform engineers can apply technically and organizationally to achieve highly resilient Java applications. Author Jonathan Schneider covers many effective SRE practices from companies leading the way in microservices adoption. You'll examine several patterns discovered through much trial and error in recent years, complete with Java code examples.
Chapters are organized according to specific patterns, including:
Application Metrics: Monitoring for availability with Micrometer
Debugging with observability: Logging and distributed tracing; failure injection testing
Charting and alerting: Building effective charts; KPIs for Java microservices
Safe multi-cloud delivery: Spinnaker, deployment strategies, and automated canary analysis
Source code observability: Dependency management, API utilization, and end-to-end asset inventory
Traffic management: Concurrency of systems; platform, gateway, and client-side load balancing
作者介紹
Jonathan Schneider is CEO and cofounder of Moderne, where he works to modernize applications and infrastructure through automated source code transformation and asset visibility. Previously, he worked for the Spring team on application monitoring and continuous delivery at Netflix on engineering tools related to distributed refactoring, dependency insight, and build tools. He also worked on refactoring at Gradle.
Jon has visited and given workshops on monitoring and delivery at a wide variety of enterprises, developing an understanding of the steps organizations need to take to get closer to Netflix-style resiliency where outages in entire regions don't disrupt service availability and application teams know about problems before the call center.