Means of High Availability Architecture




 
 

 

1. Stateless services.

2. Subsystem redundancy.

3. Idempotent design, an interface executes the same data multiple times with the same result. The data accumulation interface is naturally not idempotent. However, it can be judged whether it can be accumulated again according to the accumulation details, which can also be idempotent.

4. Asynchronous call. When a synchronous request is made, the entire thread is in a waiting state after the request is issued, and the CPU utilization is not high at this time. But don't be asynchronous if it's computationally intensive.

5. Timeout mechanism settings. When the upstream calls the downstream, the upstream is required to have a timeout mechanism.

6. Hierarchical management. Core services are deployed on good machines. Monitoring of core services can be comprehensive, and edge services can be streamlined.

7. Service downgrade. For example, some red envelopes cannot be distributed for 1 yuan to 100 people, and some can be distributed for 100 yuan to 1 person. Some accesses fail according to service degradation policies. Some service flexibility is available.

8. Service governance. First of all, there must be service monitoring, whether the process monitoring is alive, whether the returned content of the semantic monitoring interface is the same, and the error log is returned. coredump (core file is generated under linux when the program exits abnormally), data fluctuation monitoring comparison over the same period

--------------------------

Service is quantifiable



 Fault assessment is quantifiable



 

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326473405&siteId=291194637