หน้านี้ยังไม่พร้อมใช้งานในภาษาท้องถิ่นของคุณ เรากำลังพยายามอย่างหนักเพื่อเพิ่มเวอร์ชันภาษาอื่น ๆ เพิ่มเติม ขอบคุณสำหรับการสนับสนุนเสมอมา
- What's New
- Function Overview
- Service Overview
- Billing
- Getting Started
-
User Guide
- Before You Start
- Permissions Management
-
Exclusive ServiceComb Engine
- Creating a ServiceComb Engine
-
Managing ServiceComb Engines
- Viewing ServiceComb Engine Information
- Obtaining the Service Center Address of a ServiceComb Engine
- Obtaining the Configuration Center Address of a ServiceComb Engine
- Viewing the Instance Quota of a ServiceComb Engine
- Viewing the Configuration Item Quota of a ServiceComb Engine
- Configuring Backup and Restoration of a ServiceComb Engine
- Managing Public Network Access for a ServiceComb Engine
- Viewing ServiceComb Engine Operation Logs
- Upgrading a ServiceComb Engine Version
- Deleting a ServiceComb Engine
- Changing ServiceComb Engine Specifications
- Managing Security Authentication for a ServiceComb Engine
- Managing Tags
- Using ServiceComb Engines
- Registry/Configuration Center
- Key Operations Recorded by CTS
-
Best Practices
- CSE Best Practices
-
ServiceComb Engines
-
ServiceComb Engine Application Hosting
- Hosting Spring Cloud Applications Using Spring Cloud Huawei SDK
- Hosting a Java Chassis Application
-
ServiceComb Engine Application Hosting
- Registry/Configuration Centers
-
Developer Guide
- Overview
- Developing Microservice Applications
- Preparing the Environment
- Connecting Microservice Applications
- Deploying Microservice Applications
- Using ServiceComb Engine Functions
- Appendix
-
API Reference
- Before You Start
- API Overview
- Calling APIs
- Examples
-
CSE API
- API Calling
- Dynamic Configuration
-
Engine Management
- Querying Flavors Supported by a Microservice Engine
- Querying the Microservice Engine List
- Creating an Exclusive Microservice Engine
- Querying Details About a Microservice Engine
- Deleting a Microservice Engine
- Querying Details About a Microservice Engine Job
- Retrying an Exclusive ServiceComb Engine
- Upgrading an Exclusive ServiceComb Engine
- Changing Microservice Engine Specifications
- Updating the Configuration of an Exclusive Microservice Engine
-
Microservice Governance
- Querying the Governance Policy List
- Creating a Dark Launch Policy
- Querying a Dark Launch Rule of a Microservice
- Deleting a Dark Launch Policy
- Changing a Governance Policy
- Deleting a Governance Policy
- Querying Governance Policy Details
- Creating a Governance Policy
- Querying the Governance Policy List of a Specified Kind
- Nacos API
-
ServiceComb API
- API Calling
- Authentication
-
Microservice
- Querying Information About a Microservice
- Deleting Definition Information About a Microservice
- Querying Information About All Microservices
- Creating Static Information for a Microservice
- Deleting Static Information About Microservices in Batches
- Modifying Extended Attributes of a Microservice
- Querying the Unique Service or Schema ID of a Microservice
- Schema
-
Microservice Instance
- Registering a Microservice Instance
- Querying a Microservice Instance Based on service_id
- Deregistering a Microservice Instance
- Querying Details About a Microservice Instance
- Modifying the Extended Information About a Microservice Instance
- Modifying Status of a Microservice Instance
- Sending Heartbeat Information
- Querying a Microservice Instance by Filter Criteria
- Querying Microservice Instances in Batches
- Dependency
- Configuration Management
- Appendixes
- Change History
- SDK Reference
-
FAQs
- Precautions When Using Huawei Cloud CSE
- Nacos Engines
-
ServiceComb Engines
- How Do I Perform Local Development and Testing?
- How Can I Handle a Certificate Loading Error?
- What If the Header Name Is Invalid?
- What Is the Performance Loss of Mesher?
- Why Is "Version validate failed" Displayed When I Attempt to Connect to the Service Center?
- Why Is "Not enough quota" Displayed When I Attempt to Connect to the Service Center?
- What Should I Do If the Service Registration Fails After IPv6 Is Enabled for the Exclusive ServiceComb Engine with Security Authentication Enabled?
- What Is Service Name Duplication Check?
- Why Do I Have to Define Service Contracts?
- Why Are Microservice Development Framework and Netty Versions Unmatched?
- What Do I Need to Know Before Upgrading an Exclusive ServiceComb Engine?
- What Must I Check Before Migrating Services from the Professional to the Exclusive Microservice Engine?
- Why Is "Duplicate cluster name" Displayed?
- Error Message "the subnet could not be found" Is Displayed When the Access Address Fails to Be Processed During Engine Creation
- Why Is Error "does not match rule: {Max: 100, Regexp: ^[a-zA-Z0-9]{1,160}$|^[a-zA-Z0-9][a-zA-Z0-9_\-.]{0,158}[a-zA-Z0-9]$}"}" Reported?
- What Should I Do If SpringCloud Applications Fail to Connect to the Configuration Center of ServiceComb Engine 2.x?
- Why Could My the Global Configuration Not Be Modified?
- Obtain Configurations Failed
- Videos
- General Reference
Show all
Copied.
Circuit Breaker
The circuit breaker rule is based on Resilience4j and works on the server. The principles are as follows:
When the specified value of failureRateThreshold or slowCallRateThreshold is reached, the circuit breaker is triggered and response code 429 is returned. SlowCallDurationThreshold indicates the slow call duration threshold. minimumNumberOfCalls indicates the minimum number of requests that meet the circuit breaker requirement. For example, if the value of minimumNumberOfCalls is 10, at least 10 calls must be recorded to calculate the failure rate. If only nine calls are recorded, CircuitBreaker will not be enabled even if all the nine calls fail. slidingWindowType specifies the type of the sliding window. The default value is count (based on the number of requests) or time (based on the time window). If the sliding window type is count, the latest slidingWindowSize calls are recorded and counted. If the sliding window type is time, the calls in the latest slidingWindowSize seconds are recorded and counted. slidingWindowSize specifies the size of the sliding window. The unit can be the number of requests or second, depending on the sliding window type.
- Circuit breaker of Java chassis is used for microservice consumers. The circuit breaker module must be integrated into microservice applications and the bizkeeper-consumer processing chain must be enabled.
Configuration example:
servicecomb: handler: chain: Consumer: default: bizkeeper-consumer
Add the following dependency to the POM file:
<dependency> <groupId>org.apache.servicecomb</groupId> <artifactId>handler-bizkeeper</artifactId> <version>${project.version}</version> </dependency>
NOTE:
The microservice development framework Java Chassis 2.x is used as an example.
- Spring Cloud Huawei uses Aspect to intercept RequestMappingHandlerAdapter to implement circuit breaker. After Spring Cloud Huawei is integrated, the client circuit breaker module spring-cloud-starter-huawei-governance is integrated by default. You only need to enable a specific client circuit breaker policy.
servicecomb: matchGroup: AllOperation: | matches: - apiPath: prefix: "/" instanceIsolation: AllOperation: | minimumNumberOfCalls: 10 slidingWindowSize: 10 slidingWindowType: COUNT_BASED failureRateThreshold: 20 recordFailureStatus: - 502 - 503
The default policy takes effect when the error code is 502 or 503. In 1.11.4-2021.0.x/1.11.4-2022.0.x and later versions, the response header takes effect in special scenarios.
The default key of the response header is X-HTTP-STATUS-CODE. You can also customize the key by configuring the following on the client:
spring: cloud: servicecomb: governance: response: header: status: key: 'X-HTTP-EEROR-STATUS-CODE'
The response code set in the response header can also be customized. However, you need to add the corresponding error code to the fault tolerance policy. For example, if you set X-HTTP-STATUS-CODE=511, add error code 511. The configuration is as follows:
servicecomb: matchGroup: AllOperation: | matches: - apiPath: prefix: "/" instanceIsolation: AllOperation: | minimumNumberOfCalls: 10 slidingWindowSize: 10 slidingWindowType: COUNT_BASED failureRateThreshold: 20 recordFailureStatus: - 502 - 503 - 511
The preceding configuration enables the client circuit breaker policy for all instances. This policy uses the COUNT_BASED sliding window policy. The window size is 10 requests. When the number of requests reaches 10, the error rate starts to be calculated. If the error rate reaches 20%, circuit breaker is performed for subsequent requests. The default sliding window policy is TIME_BASED. The system checks the response code first. If the abnormal response code meets the policy setting, the fault tolerance function is enabled. If the abnormal response code does not meet the policy setting, the system checks whether the response code set in the header meets the requirement.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot