
# 为微服务设置容错治理策略
当微服务消费者访问提供者出现异常，比如实例网络不通等，需要将请求转发到其他可用的实例。这里的容错，常被称为重试。
#### 前提条件
已参考[创建微服务](https://support.huaweicloud.com/usermanual-cse/cse_03_0184.html#cse_03_0184__section10884541962)完成微服务创建，启动微服务后，根据yaml文件的配置，会在对应的服务下注册服务实例。如果没有事先创建微服务或者微服务已删除，在注册服务实例时会自动创建微服务。
#### 设置容错
1. 登录[微服务引擎控制台](https://console.huaweicloud.com/cse2/)。
2. 在左侧导航栏选择"ServiceComb引擎专享版"。

3. 单击待操作的引擎。
4. 选择"微服务治理"。 
   - 未开启安全认证的引擎，请执行[6]。
   
   - 开启安全认证的引擎，当登录控制台的用户为[导入IAM账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section176291011154918)中导入的用户，请执行[6]，其他用户请执行[5]。
   
   
   
   
5. 在弹出的"安全认证"对话框输入账号名及其密码，单击"确定"。
   
   ![](https://support.huaweicloud.com/usermanual-cse/public_sys-resources/note_3.0-zh-cn.png)
   - 首次连接ServiceComb引擎，请输入root账号名及[创建ServiceComb引擎](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0005.html)时输入的密码。
   
   - 创建账号请参考[新增账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section1417318590327)。
    
   
   
6. 单击需要治理的微服务。单击"容错"。
7. 单击"新增"，选择合理的策略，容错策略配置项如下表所示。 
   图1设置容错（Spring Cloud开发框架接入的微服务）   
   ![](https://support.huaweicloud.com/usermanual-cse/zh-cn_image_0000002357933802.png)
   图2设置容错（Java Chassis开发框架接入的微服务）   
   ![](https://support.huaweicloud.com/usermanual-cse/zh-cn_image_0000002391573725.png)
   
   
   
   
   | 配置项    | 配置项说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
   |:---|:---|
   | 下游微服务  | **此配置适用于Spring Cloud开发框架接入的微服务。** 设置本微服务调用下游微服务的容错规则，下拉菜单可直接选择下游微服务。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
   | 容错对象   | **此配置适用于Java Chassis开发框架接入的微服务。** 该应用依赖的应用或方法，下拉菜单可直接选择。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
   | 是否开启容错 | 开启：向容错对象发起请求时发生错误的处理策略，开启后，会根据选择的处理策略处理请求。 关闭：关闭容错策略，即使请求失败也会等到超时后，再返回失败结果。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
   | 容错策略   | 当"是否开启容错"配置项设置为"开启"时需配置。 Spring Cloud开发框架接入的微服务，需设置： - 尝试同一个微服务实例次数。  - 尝试新的微服务实例次数。   Java Chassis开发框架接入的微服务，需设置： - Failover 在不同服务器上重新尝试建立连接。   - Failfast 不再重新尝试建立连接，即请求失败时会立即返回失败结果。   - Failback 在同一个服务器上重新尝试建立连接。   - custom - 尝试同一个服务器次数：尝试与同一个服务器重新建立连接的次数。  - 尝试新的服务器次数：尝试与新的服务器建立连接的次数。     |
      
   
   
8. 单击"确定"，保存配置。
 
