上传者: 25527791
|
上传时间: 2022-10-29 10:43:43
|
文件大小: 10.4MB
|
文件类型: PDF
Microservice architecture has emerged as a common pattern of software develop‐
ment from the practices of a number of leading organizations. These practices
includes principles, technologies, methodologies, organizational tendencies, and cul‐
tural characteristics. Companies taking steps to implement microservices and reap
their benefits need to consider this broad scope.
Who Should Read This Book
You should read this book if you are interested in the architectural, organizational,
and cultural changes that are needed to succeed with a microservice architecture. We
primarily wrote this book for technology leaders and software architects who want to
shift their organizations toward the microservices style of application development.
You don’t have to be a CTO or enterprise architect to enjoy this book, but we’ve writ‐
ten our guidance under the assumption that you are able to influence the organiza‐
tional design, technology platform, and software architecture at your company.
What’s In This Book
This book promotes a goal-oriented, design-based approach to microservice architec‐
ture. We offer this design-centric approach because, as we talked to several companies
about their programs, we discovered one of the keys to their success was the willing‐
ness to not stick to a single tool or process as they attempted to increase their compa‐
ny’s time-to-market while maintaining—even increasing—their systems’ safety and
resilience.
The companies we talked to offered a wide range of services including live video and
audio streaming service, foundation-level virtual services in the cloud, and support
for classic brick-and-mortar operations. While these companies’ products vary, we
learned that the principles of speed and safety “at scale” were a common thread. They
ix
each worked to provide the same system properties in their own unique ways—ways
that fit the key business values and goals of the company.
It’s the properties and values that we focus on in this book, and the patterns and prac‐
tices we see companies employ in order to reach their unique goals. If you’re looking
for a way to identify business goals for your microservices adoption, practical guid‐
ance on how to design individual microservices and the system they form, and tips
on how to overcome common architectural challenges, this is your book!
The Outline
The book is organized into three parts. The first part (Chapters 1–2) identifies the
principles and practices of microservice architecture and the benefits they can pro‐
vide. This section will be valuable to anyone who needs to justify the use of microser‐
vices within their organization and provide some background on how other
organizations have started on this journey.
The second part (Chapters 3–4) introduces a design-based approach to microservice
architecture, identifies a series of common processes and practices we see repeated
through successful microservice systems, and provides some implementation guid‐
ance on executing the various elements for your company’s microservice implemen‐
tation.
The third and final part (Chapters 5–7) provides a set of practical recipes and practi‐
ces to help companies identify ways to introduce and support microservices, meet
immediate challenges, and plan for and respond to the inevitably changing business
environment ahead.
Here’s a quick rundown of the chapters:
Chapter 1, The Microservices Way
This chapter outlines the principles, practices, and culture that define microser‐
vice architecture.
Chapter 2, The Microservices Value Proposition
This chapter examines the benefits of microservice architecture and some techni‐
ques to achieve them.
Chapter 3, Designing Microservice Systems
This chapter explores the system aspects of microservices and illustrates a design
process for microservice architecture.
Chapter 4, Establishing a Foundation
This chapter discusses the core principles for microservice architecture, as well as
the platform components and cultural elements needed to thrive.
x | Preface
Chapter 5, Service Design
This chapter takes the “micro” design view, examining the fundamental design
concepts for individual microservices.
Chapter 6, System Design and Operations
This chapter takes the “macro” design view, analyzing the critical design areas for
the software system made up of the collection of microservices.
Chapter 7, Adopting Microservices in Practice
This chapter provides practical guidance on how to deal with common chal‐
lenges organizations encounter as they introduce microservice architecture.
Chapter 8, Epilogue
Finally, this chapter examines microservices and microservice architecture in a
timeless context, and emphasizes the central theme of the book: adaptability to
change.
What’s Not In This Book
The aim of this book is to arm readers with practical information and a way of think‐
ing about microservices that is timeless and effective. This is not a coding book.
There is a growing body of code samples and open source projects related to micro‐
services available on the Web, notably on GitHub and on sites like InfoQ. In addition,
the scope of this domain is big and we can only go so deep on the topics we cover. For
more background on the concepts we discuss, check out our reading list in Appen‐
dix A.
While we provide lots of guidance and advice—advice based on our discussions with
a number of companies designing and implementing systems using microservice
architecture patterns—we do not tell readers which product to buy, which open
source project to adopt, or how to design and test component APIs. Instead, we offer
insight into the thinking processes and practices of experienced and successful com‐
panies actually doing the work of microservices. If you’re looking for simple answers,
you’re likely to be disappointed in some of the material here. If, on the other hand,
you’re looking for examples of successful microservice companies and the kinds of
principles, practices, and processes they employ, this book is for you.