那么就需要在双机房部署的时候,优先调用本机房服务,然后如果本机房没有服务或者不符合要求,那么会调用其他机房的服务。...任意可用
配置调整
对于亚洲大区,读写都只需要调用本机房的服务,只需配置:
对于美洲大区,需要调用亚洲大区的写服务,因此需要配置美洲和亚洲两个注册中心,并将美洲的注册中心标记为默认:
代码实现
@Reference(registry="asia")
WriteAPI writeApi;
写服务注入强制指定亚洲大区,这样对于美洲大区调用写服务会调用到亚洲大区,对于亚洲大区调用写服务也会调用本大区服务...,如果没有则选择同大区的服务调用,否则使用负载均衡根据权重选择Invoker,再者就随机选择一个可用的Invoker,最后如果前边都不满足则随便选择一个Invoker调用。