在微服务项目中,要提高项目的可用性,注册中心要有集群,更重要的是服务提供方的集群,在这篇文章主要讲一下服务提供方集群的配置
基本配置
关于pom和properties的配置可以参考
该文章最后一个子标题说明了基本配置
需要注意的是
- 同一个集群中不同服务提供方的端口号应该不同
- 而且要求对外暴露的名称即spring.application.name属性相同
负载均衡
在实现服务提供方的集群配置之后,一个重要的问题就是实现服务访问的负载均衡
要实现负载均衡,要在配置RestTemplate对象的方法上面添加注解@LoadBalanced
,即
@Configuration
public class ApplicationConfig {
@Bean("restTemplate")
@LoadBalanced
public RestTemplate getRestTemplate(){
return new RestTemplate();
}
}
实现了负载均衡后就可以直接通过微服务名称调用微服务
此时在订单方调用支付方时关于服务的ip地址与端口号不能写死,要写成服务名称的形式
public static final String URL = "Http://服务名称";
最后就是调用服务即可