Author: Bilgin Ibryam
Publisher: O'Reilly Media
ISBN: 1492050253
Category : Computers
Languages : en
Pages : 267
Book Description
The way developers design, build, and run software has changed significantly with the evolution of microservices and containers. These modern architectures use new primitives that require a different set of practices than most developers, tech leads, and architects are accustomed to. With this focused guide, Bilgin Ibryam and Roland Huß from Red Hat provide common reusable elements, patterns, principles, and practices for designing and implementing cloud-native applications on Kubernetes. Each pattern includes a description of the problem and a proposed solution with Kubernetes specifics. Many patterns are also backed by concrete code examples. This book is ideal for developers already familiar with basic Kubernetes concepts who want to learn common cloud native patterns. You’ll learn about the following pattern categories: Foundational patterns cover the core principles and practices for building container-based cloud-native applications. Behavioral patterns explore finer-grained concepts for managing various types of container and platform interactions. Structural patterns help you organize containers within a pod, the atom of the Kubernetes platform. Configuration patterns provide insight into how application configurations can be handled in Kubernetes. Advanced patterns covers more advanced topics such as extending the platform with operators.
Kubernetes Patterns
Author: Bilgin Ibryam
Publisher: "O'Reilly Media, Inc."
ISBN: 1098131649
Category : Computers
Languages : en
Pages : 345
Book Description
The way developers design, build, and run software has changed significantly with the evolution of microservices and containers. These modern architectures offer new distributed primitives that require a different set of practices than many developers, tech leads, and architects are accustomed to. With this focused guide, Bilgin Ibryam and Roland Huss provide common reusable patterns and principles for designing and implementing cloud native applications on Kubernetes. Each pattern includes a description of the problem and a Kubernetes-specific solution. All patterns are backed by and demonstrated with concrete code examples. This updated edition is ideal for developers and architects familiar with basic Kubernetes concepts who want to learn how to solve common cloud native challenges with proven design patterns. You'll explore: Foundational patterns covering core principles and practices for building and running container-based cloud native applications Behavioral patterns that delve into finer-grained concepts for managing various types of container and platform interactions Structural patterns for organizing containers within a Pod for addressing specific use cases Configuration patterns that provide insight into how application configurations can be handled in Kubernetes Security patterns for hardening the access to cloud native applications running on KubernetesAdvanced patterns covering more complex topics such as operators and autoscaling
Publisher: "O'Reilly Media, Inc."
ISBN: 1098131649
Category : Computers
Languages : en
Pages : 345
Book Description
The way developers design, build, and run software has changed significantly with the evolution of microservices and containers. These modern architectures offer new distributed primitives that require a different set of practices than many developers, tech leads, and architects are accustomed to. With this focused guide, Bilgin Ibryam and Roland Huss provide common reusable patterns and principles for designing and implementing cloud native applications on Kubernetes. Each pattern includes a description of the problem and a Kubernetes-specific solution. All patterns are backed by and demonstrated with concrete code examples. This updated edition is ideal for developers and architects familiar with basic Kubernetes concepts who want to learn how to solve common cloud native challenges with proven design patterns. You'll explore: Foundational patterns covering core principles and practices for building and running container-based cloud native applications Behavioral patterns that delve into finer-grained concepts for managing various types of container and platform interactions Structural patterns for organizing containers within a Pod for addressing specific use cases Configuration patterns that provide insight into how application configurations can be handled in Kubernetes Security patterns for hardening the access to cloud native applications running on KubernetesAdvanced patterns covering more complex topics such as operators and autoscaling
Kubernetes Operators
Author: Jason Dobies
Publisher: O'Reilly Media
ISBN: 1492048011
Category : Computers
Languages : en
Pages : 156
Book Description
Operators are a way of packaging, deploying, and managing Kubernetes applications. A Kubernetes application doesn't just run on Kubernetes; it's composed and managed in Kubernetes terms. Operators add application-specific operational knowledge to a Kubernetes cluster, making it easier to automate complex, stateful applications and to augment the platform. Operators can coordinate application upgrades seamlessly, react to failures automatically, and streamline repetitive maintenance like backups. Think of Operators as site reliability engineers in software. They work by extending the Kubernetes control plane and API, helping systems integrators, cluster administrators, and application developers reliably deploy and manage key services and components. Using real-world examples, authors Jason Dobies and Joshua Wood demonstrate how to use Operators today and how to create Operators for your applications with the Operator Framework and SDK. Learn how to establish a Kubernetes cluster and deploy an Operator Examine a range of Operators from usage to implementation Explore the three pillars of the Operator Framework: the Operator SDK, the Operator Lifecycle Manager, and Operator Metering Build Operators from the ground up using the Operator SDK Build, package, and run an Operator in development, testing, and production phases Learn how to distribute your Operator for installation on Kubernetes clusters
Publisher: O'Reilly Media
ISBN: 1492048011
Category : Computers
Languages : en
Pages : 156
Book Description
Operators are a way of packaging, deploying, and managing Kubernetes applications. A Kubernetes application doesn't just run on Kubernetes; it's composed and managed in Kubernetes terms. Operators add application-specific operational knowledge to a Kubernetes cluster, making it easier to automate complex, stateful applications and to augment the platform. Operators can coordinate application upgrades seamlessly, react to failures automatically, and streamline repetitive maintenance like backups. Think of Operators as site reliability engineers in software. They work by extending the Kubernetes control plane and API, helping systems integrators, cluster administrators, and application developers reliably deploy and manage key services and components. Using real-world examples, authors Jason Dobies and Joshua Wood demonstrate how to use Operators today and how to create Operators for your applications with the Operator Framework and SDK. Learn how to establish a Kubernetes cluster and deploy an Operator Examine a range of Operators from usage to implementation Explore the three pillars of the Operator Framework: the Operator SDK, the Operator Lifecycle Manager, and Operator Metering Build Operators from the ground up using the Operator SDK Build, package, and run an Operator in development, testing, and production phases Learn how to distribute your Operator for installation on Kubernetes clusters
Designing Distributed Systems
Author: Brendan Burns
Publisher: "O'Reilly Media, Inc."
ISBN: 1491983612
Category : Computers
Languages : en
Pages : 164
Book Description
Without established design patterns to guide them, developers have had to build distributed systems from scratch, and most of these systems are very unique indeed. Today, the increasing use of containers has paved the way for core distributed system patterns and reusable containerized components. This practical guide presents a collection of repeatable, generic patterns to help make the development of reliable distributed systems far more approachable and efficient. Author Brendan Burns—Director of Engineering at Microsoft Azure—demonstrates how you can adapt existing software design patterns for designing and building reliable distributed applications. Systems engineers and application developers will learn how these long-established patterns provide a common language and framework for dramatically increasing the quality of your system. Understand how patterns and reusable components enable the rapid development of reliable distributed systems Use the side-car, adapter, and ambassador patterns to split your application into a group of containers on a single machine Explore loosely coupled multi-node distributed patterns for replication, scaling, and communication between the components Learn distributed system patterns for large-scale batch data processing covering work-queues, event-based processing, and coordinated workflows
Publisher: "O'Reilly Media, Inc."
ISBN: 1491983612
Category : Computers
Languages : en
Pages : 164
Book Description
Without established design patterns to guide them, developers have had to build distributed systems from scratch, and most of these systems are very unique indeed. Today, the increasing use of containers has paved the way for core distributed system patterns and reusable containerized components. This practical guide presents a collection of repeatable, generic patterns to help make the development of reliable distributed systems far more approachable and efficient. Author Brendan Burns—Director of Engineering at Microsoft Azure—demonstrates how you can adapt existing software design patterns for designing and building reliable distributed applications. Systems engineers and application developers will learn how these long-established patterns provide a common language and framework for dramatically increasing the quality of your system. Understand how patterns and reusable components enable the rapid development of reliable distributed systems Use the side-car, adapter, and ambassador patterns to split your application into a group of containers on a single machine Explore loosely coupled multi-node distributed patterns for replication, scaling, and communication between the components Learn distributed system patterns for large-scale batch data processing covering work-queues, event-based processing, and coordinated workflows
Kubernetes: Up and Running
Author: Kelsey Hightower
Publisher: "O'Reilly Media, Inc."
ISBN: 1491936029
Category : Computers
Languages : en
Pages : 201
Book Description
Legend has it that Google deploys over two billion application containers a week. How’s that possible? Google revealed the secret through a project called Kubernetes, an open source cluster orchestrator (based on its internal Borg system) that radically simplifies the task of building, deploying, and maintaining scalable distributed systems in the cloud. This practical guide shows you how Kubernetes and container technology can help you achieve new levels of velocity, agility, reliability, and efficiency. Authors Kelsey Hightower, Brendan Burns, and Joe Beda—who’ve worked on Kubernetes at Google and other organizatons—explain how this system fits into the lifecycle of a distributed application. You will learn how to use tools and APIs to automate scalable distributed systems, whether it is for online services, machine-learning applications, or a cluster of Raspberry Pi computers. Explore the distributed system challenges that Kubernetes addresses Dive into containerized application development, using containers such as Docker Create and run containers on Kubernetes, using the docker image format and container runtime Explore specialized objects essential for running applications in production Reliably roll out new software versions without downtime or errors Get examples of how to develop and deploy real-world applications in Kubernetes
Publisher: "O'Reilly Media, Inc."
ISBN: 1491936029
Category : Computers
Languages : en
Pages : 201
Book Description
Legend has it that Google deploys over two billion application containers a week. How’s that possible? Google revealed the secret through a project called Kubernetes, an open source cluster orchestrator (based on its internal Borg system) that radically simplifies the task of building, deploying, and maintaining scalable distributed systems in the cloud. This practical guide shows you how Kubernetes and container technology can help you achieve new levels of velocity, agility, reliability, and efficiency. Authors Kelsey Hightower, Brendan Burns, and Joe Beda—who’ve worked on Kubernetes at Google and other organizatons—explain how this system fits into the lifecycle of a distributed application. You will learn how to use tools and APIs to automate scalable distributed systems, whether it is for online services, machine-learning applications, or a cluster of Raspberry Pi computers. Explore the distributed system challenges that Kubernetes addresses Dive into containerized application development, using containers such as Docker Create and run containers on Kubernetes, using the docker image format and container runtime Explore specialized objects essential for running applications in production Reliably roll out new software versions without downtime or errors Get examples of how to develop and deploy real-world applications in Kubernetes
Cloud Native Patterns
Author: Cornelia Davis
Publisher: Simon and Schuster
ISBN: 1638356858
Category : Computers
Languages : en
Pages : 573
Book Description
Summary Cloud Native Patternsis your guide to developing strong applications that thrive in the dynamic, distributed, virtual world of the cloud. This book presents a mental model for cloud-native applications, along with the patterns, practices, and tooling that set them apart. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology Cloud platforms promise the holy grail: near-zero downtime, infinite scalability, short feedback cycles, fault-tolerance, and cost control. But how do you get there? By applying cloudnative designs, developers can build resilient, easily adaptable, web-scale distributed applications that handle massive user traffic and data loads. Learn these fundamental patterns and practices, and you'll be ready to thrive in the dynamic, distributed, virtual world of the cloud. About the Book With 25 years of experience under her belt, Cornelia Davis teaches you the practices and patterns that set cloud-native applications apart. With realistic examples and expert advice for working with apps, data, services, routing, and more, she shows you how to design and build software that functions beautifully on modern cloud platforms. As you read, you will start to appreciate that cloud-native computing is more about the how and why rather than the where. What's inside The lifecycle of cloud-native apps Cloud-scale configuration management Zero downtime upgrades, versioned services, and parallel deploys Service discovery and dynamic routing Managing interactions between services, including retries and circuit breakers About the Reader Requires basic software design skills and an ability to read Java or a similar language. About the Author Cornelia Davis is Vice President of Technology at Pivotal Software. A teacher at heart, she's spent the last 25 years making good software and great software developers. Table of Contents PART 1 - THE CLOUD-NATIVE CONTEXT You keep using that word: Defining "cloud-native" Running cloud-native applications in production The platform for cloud-native software PART 2 - CLOUD-NATIVE PATTERNS Event-driven microservices: It's not just request/response App redundancy: Scale-out and statelessness Application configuration: Not just environment variables The application lifecycle: Accounting for constant change Accessing apps: Services, routing, and service discovery Interaction redundancy: Retries and other control loops Fronting services: Circuit breakers and API gateways Troubleshooting: Finding the needle in the haystack Cloud-native data: Breaking the data monolith
Publisher: Simon and Schuster
ISBN: 1638356858
Category : Computers
Languages : en
Pages : 573
Book Description
Summary Cloud Native Patternsis your guide to developing strong applications that thrive in the dynamic, distributed, virtual world of the cloud. This book presents a mental model for cloud-native applications, along with the patterns, practices, and tooling that set them apart. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology Cloud platforms promise the holy grail: near-zero downtime, infinite scalability, short feedback cycles, fault-tolerance, and cost control. But how do you get there? By applying cloudnative designs, developers can build resilient, easily adaptable, web-scale distributed applications that handle massive user traffic and data loads. Learn these fundamental patterns and practices, and you'll be ready to thrive in the dynamic, distributed, virtual world of the cloud. About the Book With 25 years of experience under her belt, Cornelia Davis teaches you the practices and patterns that set cloud-native applications apart. With realistic examples and expert advice for working with apps, data, services, routing, and more, she shows you how to design and build software that functions beautifully on modern cloud platforms. As you read, you will start to appreciate that cloud-native computing is more about the how and why rather than the where. What's inside The lifecycle of cloud-native apps Cloud-scale configuration management Zero downtime upgrades, versioned services, and parallel deploys Service discovery and dynamic routing Managing interactions between services, including retries and circuit breakers About the Reader Requires basic software design skills and an ability to read Java or a similar language. About the Author Cornelia Davis is Vice President of Technology at Pivotal Software. A teacher at heart, she's spent the last 25 years making good software and great software developers. Table of Contents PART 1 - THE CLOUD-NATIVE CONTEXT You keep using that word: Defining "cloud-native" Running cloud-native applications in production The platform for cloud-native software PART 2 - CLOUD-NATIVE PATTERNS Event-driven microservices: It's not just request/response App redundancy: Scale-out and statelessness Application configuration: Not just environment variables The application lifecycle: Accounting for constant change Accessing apps: Services, routing, and service discovery Interaction redundancy: Retries and other control loops Fronting services: Circuit breakers and API gateways Troubleshooting: Finding the needle in the haystack Cloud-native data: Breaking the data monolith
Extending Kubernetes
Author: Onur Yilmaz
Publisher:
ISBN: 9781484270967
Category : Application software
Languages : en
Pages : 252
Book Description
Rely on this comprehensive guide to understand the extension patterns and discover the extension plugins for Kubernetes. In this book, state-of-the-art extension patterns and extension points of Kubernetes are covered in depth with real-life use cases and examples. There are comprehensive discussions in the text on all possible aspects of Kubernetes, starting from end-user to the fully-automated controller development. The book focuses on creating applications that work on Kubernetes and also interact and operate Kubernetes itself. The book starts with a recap of Kubernetes, its rich configuration options, extension patterns, and points. The journey of extending Kubernetes starts with the CLI tool plugins. By the end of this section, you will be able to create and manage kubectl plugins. Then, the API access plugins with authentication and authorization webhooks are presented. In this section, you will learn how to extend and interfere with the API flow of Kubernetes. You then move on to learn how to extend Kubernetes API with new resources and controllers. You will make Kubernetes API work for you by creating a Kubernetes operator. Extensions for Kubernetes schedulers are covered to create a custom scheduler and run it side-by-side with the default scheduler. Finally, the last extension points will be discussed for the infrastructure, such as networking or storage. At the end of the text, you will learn the upcoming extension points. This book is designed to cover all the extension points of Kubernetes with state-of-the-art implementations. This book is intended for those who wish to understand Kubernetes in depth and go further by making Kubernetes work for their custom requirements. By the end of this book, readers with a cloud-native mindset will broaden their vision to create future-proof applications. Rather than focus on overwhelming theoretical information and YAML files for Kubernetes resources, readers are provided with the philosophy behind Kubernetes extensions. With real-life examples and hands-on development steps, you will be more confident in working with Kubernetes. You will: Know the Kubernetes extension patterns and available extension points Be familiar with the philosophy behind Kubernetes extensions and how they should be integrated into the clusters Design Kubernetes extensions and make Kubernetes work for you Develop, deploy, and operate plugins for Kubernetes ranging from the CLI tool to custom resources, schedulers, infrastructure, and more Study real-life use cases for extending Kubernetes with code examples.
Publisher:
ISBN: 9781484270967
Category : Application software
Languages : en
Pages : 252
Book Description
Rely on this comprehensive guide to understand the extension patterns and discover the extension plugins for Kubernetes. In this book, state-of-the-art extension patterns and extension points of Kubernetes are covered in depth with real-life use cases and examples. There are comprehensive discussions in the text on all possible aspects of Kubernetes, starting from end-user to the fully-automated controller development. The book focuses on creating applications that work on Kubernetes and also interact and operate Kubernetes itself. The book starts with a recap of Kubernetes, its rich configuration options, extension patterns, and points. The journey of extending Kubernetes starts with the CLI tool plugins. By the end of this section, you will be able to create and manage kubectl plugins. Then, the API access plugins with authentication and authorization webhooks are presented. In this section, you will learn how to extend and interfere with the API flow of Kubernetes. You then move on to learn how to extend Kubernetes API with new resources and controllers. You will make Kubernetes API work for you by creating a Kubernetes operator. Extensions for Kubernetes schedulers are covered to create a custom scheduler and run it side-by-side with the default scheduler. Finally, the last extension points will be discussed for the infrastructure, such as networking or storage. At the end of the text, you will learn the upcoming extension points. This book is designed to cover all the extension points of Kubernetes with state-of-the-art implementations. This book is intended for those who wish to understand Kubernetes in depth and go further by making Kubernetes work for their custom requirements. By the end of this book, readers with a cloud-native mindset will broaden their vision to create future-proof applications. Rather than focus on overwhelming theoretical information and YAML files for Kubernetes resources, readers are provided with the philosophy behind Kubernetes extensions. With real-life examples and hands-on development steps, you will be more confident in working with Kubernetes. You will: Know the Kubernetes extension patterns and available extension points Be familiar with the philosophy behind Kubernetes extensions and how they should be integrated into the clusters Design Kubernetes extensions and make Kubernetes work for you Develop, deploy, and operate plugins for Kubernetes ranging from the CLI tool to custom resources, schedulers, infrastructure, and more Study real-life use cases for extending Kubernetes with code examples.
Production Kubernetes
Author: Josh Rosso
Publisher: "O'Reilly Media, Inc."
ISBN: 1492092258
Category : Computers
Languages : en
Pages : 508
Book Description
Kubernetes has become the dominant container orchestrator, but many organizations that have recently adopted this system are still struggling to run actual production workloads. In this practical book, four software engineers from VMware bring their shared experiences running Kubernetes in production and provide insight on key challenges and best practices. The brilliance of Kubernetes is how configurable and extensible the system is, from pluggable runtimes to storage integrations. For platform engineers, software developers, infosec, network engineers, storage engineers, and others, this book examines how the path to success with Kubernetes involves a variety of technology, pattern, and abstraction considerations. With this book, you will: Understand what the path to production looks like when using Kubernetes Examine where gaps exist in your current Kubernetes strategy Learn Kubernetes's essential building blocks--and their trade-offs Understand what's involved in making Kubernetes a viable location for applications Learn better ways to navigate the cloud native landscape
Publisher: "O'Reilly Media, Inc."
ISBN: 1492092258
Category : Computers
Languages : en
Pages : 508
Book Description
Kubernetes has become the dominant container orchestrator, but many organizations that have recently adopted this system are still struggling to run actual production workloads. In this practical book, four software engineers from VMware bring their shared experiences running Kubernetes in production and provide insight on key challenges and best practices. The brilliance of Kubernetes is how configurable and extensible the system is, from pluggable runtimes to storage integrations. For platform engineers, software developers, infosec, network engineers, storage engineers, and others, this book examines how the path to success with Kubernetes involves a variety of technology, pattern, and abstraction considerations. With this book, you will: Understand what the path to production looks like when using Kubernetes Examine where gaps exist in your current Kubernetes strategy Learn Kubernetes's essential building blocks--and their trade-offs Understand what's involved in making Kubernetes a viable location for applications Learn better ways to navigate the cloud native landscape
Kubernetes Best Practices
Author: Brendan Burns
Publisher: "O'Reilly Media, Inc."
ISBN: 1492056421
Category : Computers
Languages : en
Pages : 281
Book Description
In this practical guide, four Kubernetes professionals with deep experience in distributed systems, enterprise application development, and open source will guide you through the process of building applications with this container orchestration system. Based on the experiences of companies that are running Kubernetes in production successfully, many of the methods are also backed by concrete code examples. This book is ideal for those already familiar with basic Kubernetes concepts who want to learn common best practices. You’ll learn exactly what you need to know to build your best app with Kubernetes the first time. Set up and develop applications in Kubernetes Learn patterns for monitoring, securing your systems, and managing upgrades, rollouts, and rollbacks Understand Kubernetes networking policies and where service mesh fits in Integrate services and legacy applications and develop higher-level platforms on top of Kubernetes Run machine learning workloads in Kubernetes
Publisher: "O'Reilly Media, Inc."
ISBN: 1492056421
Category : Computers
Languages : en
Pages : 281
Book Description
In this practical guide, four Kubernetes professionals with deep experience in distributed systems, enterprise application development, and open source will guide you through the process of building applications with this container orchestration system. Based on the experiences of companies that are running Kubernetes in production successfully, many of the methods are also backed by concrete code examples. This book is ideal for those already familiar with basic Kubernetes concepts who want to learn common best practices. You’ll learn exactly what you need to know to build your best app with Kubernetes the first time. Set up and develop applications in Kubernetes Learn patterns for monitoring, securing your systems, and managing upgrades, rollouts, and rollbacks Understand Kubernetes networking policies and where service mesh fits in Integrate services and legacy applications and develop higher-level platforms on top of Kubernetes Run machine learning workloads in Kubernetes
Microservices Patterns
Author: Chris Richardson
Publisher: Simon and Schuster
ISBN: 1638356327
Category : Computers
Languages : en
Pages : 520
Book Description
"A comprehensive overview of the challenges teams face when moving to microservices, with industry-tested solutions to these problems." - Tim Moore, Lightbend 44 reusable patterns to develop and deploy reliable production-quality microservices-based applications, with worked examples in Java Key Features 44 design patterns for building and deploying microservices applications Drawing on decades of unique experience from author and microservice architecture pioneer Chris Richardson A pragmatic approach to the benefits and the drawbacks of microservices architecture Solve service decomposition, transaction management, and inter-service communication Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About The Book Microservices Patterns teaches you 44 reusable patterns to reliably develop and deploy production-quality microservices-based applications. This invaluable set of design patterns builds on decades of distributed system experience, adding new patterns for composing services into systems that scale and perform under real-world conditions. More than just a patterns catalog, this practical guide with worked examples offers industry-tested advice to help you design, implement, test, and deploy your microservices-based application. What You Will Learn How (and why!) to use microservices architecture Service decomposition strategies Transaction management and querying patterns Effective testing strategies Deployment patterns This Book Is Written For Written for enterprise developers familiar with standard enterprise application architecture. Examples are in Java. About The Author Chris Richardson is a Java Champion, a JavaOne rock star, author of Manning’s POJOs in Action, and creator of the original CloudFoundry.com. Table of Contents Escaping monolithic hell Decomposition strategies Interprocess communication in a microservice architecture Managing transactions with sagas Designing business logic in a microservice architecture Developing business logic with event sourcing Implementing queries in a microservice architecture External API patterns Testing microservices: part 1 Testing microservices: part 2 Developing production-ready services Deploying microservices Refactoring to microservices
Publisher: Simon and Schuster
ISBN: 1638356327
Category : Computers
Languages : en
Pages : 520
Book Description
"A comprehensive overview of the challenges teams face when moving to microservices, with industry-tested solutions to these problems." - Tim Moore, Lightbend 44 reusable patterns to develop and deploy reliable production-quality microservices-based applications, with worked examples in Java Key Features 44 design patterns for building and deploying microservices applications Drawing on decades of unique experience from author and microservice architecture pioneer Chris Richardson A pragmatic approach to the benefits and the drawbacks of microservices architecture Solve service decomposition, transaction management, and inter-service communication Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About The Book Microservices Patterns teaches you 44 reusable patterns to reliably develop and deploy production-quality microservices-based applications. This invaluable set of design patterns builds on decades of distributed system experience, adding new patterns for composing services into systems that scale and perform under real-world conditions. More than just a patterns catalog, this practical guide with worked examples offers industry-tested advice to help you design, implement, test, and deploy your microservices-based application. What You Will Learn How (and why!) to use microservices architecture Service decomposition strategies Transaction management and querying patterns Effective testing strategies Deployment patterns This Book Is Written For Written for enterprise developers familiar with standard enterprise application architecture. Examples are in Java. About The Author Chris Richardson is a Java Champion, a JavaOne rock star, author of Manning’s POJOs in Action, and creator of the original CloudFoundry.com. Table of Contents Escaping monolithic hell Decomposition strategies Interprocess communication in a microservice architecture Managing transactions with sagas Designing business logic in a microservice architecture Developing business logic with event sourcing Implementing queries in a microservice architecture External API patterns Testing microservices: part 1 Testing microservices: part 2 Developing production-ready services Deploying microservices Refactoring to microservices