官术网_书友最值得收藏!

Cloud native patterns

It is easy enough to say that we will architecture cloud-native systems based on Reactive principles and leverage event streaming to ultimately turn the cloud into the database, but it is another thing entirely to show how the pieces fit together. There is a relatively small collection of proven patterns that can be leveraged as templates to build cloud-native systems that solve a wide variety of valuable problems. Many of these patterns may already be familiar, but have cloud-native twists.

Each pattern describes a solution to a specific problem in the context of cloud-native systems and addresses various forces, issues, and trade-offs. The patterns are interrelated and thus can be pieced together to build systems composed of bounded isolated components. There are many ways to document patterns. Martin Fowler has an excellent summary of various pattern forms in his posting on Writing Software Patterns (https://www.martinfowler.com/articles/writingPatterns.html).

Our cloud-native patterns are documented in the following form. Each will start with its name, a brief description of its intent, and a diagram that represents a sketch of the solution. These three pieces are critical to forming a pattern language that teams can use to facilitate architecture and design discussions and to train new team members. When additional details are needed we can refer to the body of each pattern.

Each pattern body includes sections discussing the context, problem, and forces; the solution, the resulting context, and one or more examples of the solution in action. The solution may include variations that can be applied in different scenarios. The resulting context section discusses the consequences, benefits, and drawbacks of applying the pattern, along with how it relates to the other cloud-native patterns. The patterns are grouped into three categories: Foundation, Boundary, and Control, to emphasize their relationships to each other and their place in cloud-native systems in general. The examples are real working solutions. However, they are purposefully simplified to focus in on the specific pattern.

Thus far we have established the overall context for our cloud-native patterns. The promise of cloud-native is to enable everyday companies to rapidly and continuously deliver innovation with confidence. To this end we want to empower self-sufficient, full-stack teams, leverage value-added cloud services, and embrace disposable architecture so that teams can focus on the value proposition of their bounded isolated components. We want to achieve global scale by recognizing that the cloud is the database, applying Reactive principles, and turning the database inside out to create proper bulkheads through the replication of data to materialized views built on event streaming, Polyglot Persistence, and cloud-native databases.

This context will be at the heart of all our cloud-native patterns. The following is a catalog of the patterns organized by category. Each category section includes a description of the category, the name, and intent of each pattern, and a summary diagram with a thumbnail image of each pattern sketch. Please refer to the chapters that describe patterns for the full size sketches. Plus, all the images are available for download as mentioned in the Preface of the book.

主站蜘蛛池模板: 巍山| 东乌珠穆沁旗| 江安县| 江陵县| 景洪市| 都江堰市| 静海县| 集贤县| 繁昌县| 丹江口市| 黄石市| 南宁市| 噶尔县| 陆丰市| 海阳市| 邹平县| 筠连县| 徐闻县| 仁怀市| 双流县| 霍邱县| 榆树市| 林芝县| 湖北省| 安达市| 和静县| 鲁甸县| 界首市| 花莲市| 百色市| 达拉特旗| 白水县| 阳朔县| 广东省| 宁都县| 马龙县| 肃北| 恩平市| 呼图壁县| 芷江| 江西省|