一. 概述
- Dubbo使用Cluster接口定义容错集群,默认有下面几种实现
- failover
失败后选择另外一台服务提供者进行重试,重试次数可配置,通常适合实现幂等服务的场景。
- failfast
快速失败,失败后立即返回错误。
- failsafe
调用失败后打印错误日志,返回成功,通常用于记录审计日志等场景。
- failback
调用失败后,返回成功,但会在后台定时无限次重试,重启后不再重试。
- forking
并发调用,收到第一个响应结果后返回给客户端。通常适合实时性要求比较高的场景,但浪费服务器资源,通常可以通过forks参数设置并发调用度。
2. 本文的目的是新增一种Cluster实现类,使用SPI机制动态加载并使用
3. 新增MyCluster实现类,如果客户端是指定的IP地址则调用服务端,否则抛异常
- myCluster
客户端是指定的IP地址则调用服务端,否则抛异常
基础代码参考