Skip to content

Latest commit

 

History

History
51 lines (36 loc) · 2.38 KB

route.md

File metadata and controls

51 lines (36 loc) · 2.38 KB

分发策略

说明:下面示例中采用 <joyrpc/> 标签 表示JOYRPC中的schema。

配置

消费者调用时,可以设置集群分发策略,该策略可以配置在接口上也可以配置在方法上,配置如下:

  <beans>
  
      <joyrpc:consumer cluster="failfast" >
          <joyrpc:method name="echo" cluster="failover"/>
      </joyrpc:consumer>
  
  </beans>

分发策略

分发策略可以配置在接口上也可以配置在方法上,目前支持如下几种集群策略:

名称 配置 说明
失败忽略 failfast 只发起一次调用,失败立即报错。
失败重试(默认) failover 失败则根据重试策略进行重试,默认重试异常是网络异常和服务端返回的明确可以重试的异常,例如拒绝执行异常。
定点调用 pinpoint 按照用户指定的地址进行路由,目标地址可以由RequestContext中的".pinpoint"参数指定,不进行异常重试
广播调用 broadcast 遍历每个可用节点进行调用,如果有一个失败则返回失败,否则返回最后一个节点的调用结果
并行调用 forking 并行调用多个节点,以第一个成功返回的节点作为响应,如果全部失败则返回失败。可以通过扩展参数"forks"来配置并行数量

重试策略扩展配置

可以配置在接口上也可以配置在方法上

名称 默认值 说明
retries 最大重试次数
retryOnlyOncePerNode 每个节点是否只调用一次
failoverWhenThrowable 可以重试的异常全路径类名,多个异常类名用逗号分隔
服务提供方也可以内置,在"META-INF/retry/接口名称"文件中配置异常全路径名
failoverPredication 自定义异常重试判断扩展点名称
服务提供方也可以内置,在"META-INF/retry/接口名称"文件中配置异常判断插件名称,配置格式为"[插件名称]"
failoverSelector simple 异常重试目标节点选择器

重试超时控制

重试的超时时间受整个的调用超时控制,当超过了调用超时会自动结束重试

超时时间可以配置在接口上也可以配置在方法上

名称 默认值 说明
timeout 调用超时时间