A good service governance solution is essential for building a distributed system, helping you greatly reduce the cost of collaborative development and improve the version iteration efficiency.
- Dubbo version: the Dubbo service governance console provides functions only in Dubbo 2.7.3 and later.
- Registry: the service search and service list features are only available for Dubbo applications that use Nacos for service registration and discovery.
- Metadata center: the service method list is displayed only for Dubbo applications that use Nacos as the metadata center.
- Configuration center: service governance is only available for Dubbo applications that use Nacos as the configuration center.
We recommend that you use Nacos as the registry, configuration center, and metadata center and use the latest Dubbo 2.7.x version.
Before service governance is applied, Remote Procedure Call (RPC) calls are manually configured in point-to-point mode. This results in high O&M costs and is prone to errors. It is difficult to evaluate system stability at runtime. Service governance is introduced to centrally manage RPC calls. Service governance is designed to improve the performance of distributed systems, reduce repetitive work, avoid problems that arise from manual configuration of physical files, and reduce the technology costs of developers.
Service governance solutions and capabilities vary depending on different product frameworks. Service governance is essential for microservice implementation. In addition to RPC calling, service governance also includes service registration, subscription, and change delivery. Service governance supports auxiliary actions such as statistics reporting, authentication, routing rule implementation, and load balancing. When selecting a microservice framework, pay special attention to the service governance capabilities that it provides.
The following are some typical service governance cases:
- Version-based service management, used for canary release
- Request replication and playback, used to simulate traffic for stress testing
- Request tagging, used for real-time online stress testing
- More flexible load balancing and routing policies
- A built-in circuit breaking mechanism that avoids the avalanche effect of the entire distributed system