Alibaba technology giant's 20-year experience sharing microservice governance system architecture document

Preface

The sustainable development of any system requires matching governance capabilities. In the process of the evolution of human civilization, technology is the first productive force and management is an indispensable soft power. The two are both rigid and flexible, so that political economy, military, and society form an efficient and controllable system. Since the beginning of the epoch, software code has been "swallowing" the entire world through technologies such as the Internet, cloud computing, artificial intelligence, VR/AR Internet of Things, and large-scale complex systems have become the infrastructure for social operations. With the continuous enhancement of application functions, the granularity of services has become more refined, the scale of the system has become larger, the technical architecture has become more complicated, the technical team has continued to "expand", and the entropy of software has increased sharply. The corresponding governance system has evolved and matured in practice.

Under a large platform and microservice architecture, service governance capabilities are crucial. The main criteria for measuring system maturity are non-functional indicators, such as stability, security, maintainability, scalability and other system architectures ranging from single to distributed, to microservice cloud native, and even hybrid cloud, and management complexity Significantly increased. The decoupling and divide-and-conquer system needs a global dimension of service governance capabilities, and must rely on the system management system to realize that the code is the document and the system is the specification. The dike of a thousand miles collapsed in the ant nest. Once ignored, the system will quickly become corrupted if it cannot be effectively managed with standardization, proceduralization, and dataization. In the light of it, technical debt will be left, and in the case of severe illness, there is no cure The software system has its life cycle, but it is undoubtedly a failure if it is unsustainable due to governance failure.

This article focuses on service governance, with a comprehensive content system, covering development history, system construction, and detailed examples. If your system is getting chaotic, you can learn from this article to rebuild the governance system and govern from chaos.

If your system is just getting started, then this article can help you avoid detours, take care of governance from the beginning, and keep everything under control. It is true that governance also has costs, which need to be matched with actual benefits. The right one is the best. Water and fire are in harmony, yin and yang are in harmony, balance is the highest state of the golden mean, and systemic thinking is required to make a system.

As a system creator, in the face of software troubles, you should control it with balance, make it in an orderly increase and decrease, and govern with action, so as to show the true nature of the capable! The sky is high and the sea is wide, and there is a lot to do, but to cultivate Qi Zhiping, you should practice by yourselves and encourage everyone!

I hope this article can help you learn. This article will introduce you from the table of contents, main content, and target readers! !

table of Contents

Huawei senior technical experts share many years of experience in microservice governance system, architecture and practical documents

 

main content

Chapters 1 and 2 comprehensively describe the development process of service governance, as well as the difficulties and characteristics of service governance under the "big platform, microservices" architecture; it is proposed to build a trinity closed loop system from the measurement, control and management of microservices to comprehensively solve it Realistic governance issues in the full life cycle of microservices; at the same time, it explains the relevant subdivision areas and technical capabilities involved in the governance system.

  • 1.1 The relationship between IT governance and service governance
  • 1.2 History of service governance development
  • 1.3 The scope of microservice governance

Huawei senior technical experts share many years of experience in microservice governance system, architecture and practical documents

 

  • 2.1 Microservice architecture
  • 2.2 Service metrics
  • 2.3 Service Management and Control
  • 2.4 Three-dimensional body: realize the closed loop of microservice governance through measurement, control, and management

Huawei senior technical experts share many years of experience in microservice governance system, architecture and practical documents

 

Chapters 3 and 4 focus on the online governance capabilities of microservices; build microservice measurement capabilities through the measurement index system of microservice governance and index collection, storage, and analysis methods, and on this basis, analyze the health of microservices , Fault delimitation and positioning, capacity planning, root cause analysis, trend prediction, etc. to build the ability to "see" for microservices; to build the "management" of microservices by means of current limiting, degradation, fault tolerance, elastic scaling, and security control. "At the same time, the reliability of online microservices is improved through emergency plans, fault drills, and chaos engineering.

  • 3.1 Core indicators and analysis methods for online microservice measurement
  • 3.2 Service relationship dimension
  • 3.3 Application relationship dimension
  • 3.4 Service performance dimension
  • 3.5 Service Exception Dimensions
  • 3.6 Resource Dimensions
  • 3.7 Service comprehensive measurement

Huawei senior technical experts share many years of experience in microservice governance system, architecture and practical documents

 

  • 4.1 Architecture guarantee for distributed service robustness
  • 4.2 Service load
  • 4.3 Service current limit
  • 4.4 Service cluster fault tolerance
  • 4.5 Service degradation
  • 4.6 Service authorization
  • 4.7 Service online life cycle management
  • 4.8 Service online stability guarantee

Huawei senior technical experts share many years of experience in microservice governance system, architecture and practical documents

 

Chapter 5 introduces the use of APM and dynamic call chain tracking to improve the monitoring and measurement capabilities of microservices. A cross-network service invocation request involves the invocation of different applications and service nodes. Although we can record the behavior of this request on each node in the form of logs, in traditional log monitoring, there is no relationship between logs. Even if these logs are completely collected, it is difficult to identify the logs associated with the request, let alone restore the full picture of the request based on these associated logs. Discrete, unrelated log records cannot effectively help us quickly delimit and locate faults and performance problems in a distributed environment and sort out relationships.

Fortunately, the field of IT technology has long noticed the problem of sorting out performance and calling relationships in a distributed environment, and has developed a related application performance management (APM) technology system. APM is a very important and effective means to achieve service measurement. This chapter will focus on APM and its core technology: call chain tracking.

  • 5.1 History of APM and call chain development
  • 5.2 Principle of Call Chain Tracking
  • 5.3 Call chain tracking actual combat
  • 5.4 APM and call chain landing strategy

Huawei senior technical experts share many years of experience in microservice governance system, architecture and practical documents

 

Chapter 6 introduces the construction of microservices in-depth governance capabilities, and "extends" the governance of microservices to various fields such as architecture, development, testing, operation and maintenance, and team collaboration, so as to realize that the microservice architecture is "used" in the organization. To the improvement of "good use"; at the same time, the service governance capability is fed back to the business, so as to realize the benign interaction between technology and business.

6.1 Architecture governance

6.2 R&D governance

6.3 Operation and maintenance governance

6.4 Collaborative management governance

6.5 Business governance

Huawei senior technical experts share many years of experience in microservice governance system, architecture and practical documents

 

Chapter 7 builds lightweight and efficient index collection capabilities; through the study of the previous 6 chapters, I believe that readers have a relatively complete understanding of the overall technical architecture of service governance. However, there is still a certain distance between theory and practice after all, "it is always shallow on paper, and you must do it yourself." In order to help readers apply what they have learned, the last three chapters from this chapter will build a demonstration example of service governance. The technology and application system of service governance is very large, and one example cannot cover all areas. This book has repeatedly emphasized that measurement is the prerequisite and foundation of governance. Therefore, this example does not seek to be comprehensive, but only focuses on the field of service measurement. It builds a service measurement platform that integrates indicator collection, analysis, and monitoring to help readers understand how to base Performance, exception and custom log collection to monitor service performance and business status.

This chapter mainly focuses on the construction of the client SDK for service indicator collection, including architecture analysis and necessary core code description.

  • 7.1 Overall architecture
  • 7.2 Index collection
  • 7.3 Log preprocessing
  • 7.4 Indicator sending

Huawei senior technical experts share many years of experience in microservice governance system, architecture and practical documents

 

Chapter 8 Builds efficient index collection and storage capabilities that support high concurrency; Chapter 7 introduces the use of Spring AOP, MyBatis Plugin mechanism, and JVM ManagementFactory to build collection functions for service call logs, DAO call logs, system logs, etc. Use Netty NIO to build a high-performance log transmission channel. This chapter will build a server-side application that receives indicator messages and stores them on the ground, and connects with the indicator collection client built in Chapter 7 to form a complete "collection-receive" closed-loop system.

  • 8.1 Overall architecture
  • 8.2 Data reception
  • 8.3 Expansion capabilities

Huawei senior technical experts share many years of experience in microservice governance system, architecture and practical documents

 

Chapter 9 Indicator Visualization and Measurement Capability Construction; Through the introduction of the previous two chapters, we have built a basically complete technical framework and system functions for the collection, collection, and storage of governance indicators. This chapter will focus on data visualization and measurement and analysis of governance indicators. We will build a visualization system to carry these capabilities.

  • 9.1 System architecture 9.2 Service monitoring
  • 9.3 DAO monitoring
  • 9.4 System monitoring
  • 9.5 Custom business monitoring

Huawei senior technical experts share many years of experience in microservice governance system, architecture and practical documents

 

This [Microservice Governance System, Architecture and Practice] document has a total of 438 pages and requires a full version of the small partners, which can be obtained in the following ways!

Daniel's evaluation of this article and its intended readers

It has taken more than ten years from SOA to today's microservices, and many of them have service governance. However, the concept, connotation and practice of service governance have not been unified in the industry, let alone forming industry standards. With the increasing complexity of the system, the need for service governance has become more and more urgent and has become a major pain point.

Microservices are the "focus" in modern systems, and more and more distributed systems have adopted the design concept of microservices to evolve their architecture models. As the scale of microservice applications grows, it will become more and more difficult to manage the system of expansion. Compared with the design and splitting of microservices, how to better manage large-scale microservices is the real difficulty in the implementation of microservices.

From the perspective of governance, this article shows the readers the "deep water area" of the microservice field from the perspective of massive microservices. I believe that by reading this article, you can move more smoothly into the second half of microservices.

This article is suitable for technical managers, architects and technical personnel with a certain foundation to read, especially for those who enter or are about to enter the field of servicing and service governance.

I hope this article can provide readers with some inspiration and guidance, so that everyone will avoid detours.

Strive to achieve a better self, constantly improve the depth and breadth of your technology, and make yourself more valuable. I hope this article can help everyone learn and like!

Guess you like

Origin blog.csdn.net/weixin_50020950/article/details/109644984