1.準備好注冊器consul、網關gateway,普通微服務online,
2.啟動consul,給每個微服務增加代碼配置負載均衡
@LoadBalanced
@Bean
RestTemplate restTemplate(){
RestTemplate restTemplate = new RestTemplate();
restTemplate.getMessageConverters().set(1, new StringHttpMessageConverter(StandardCharsets.UTF_8));
return restTemplate;
}
3.網關配置,啟動後修改端口和instance-id,然後再啟動一個執行個體,注意保持serviceName不變
spring.application.name=heeb-gateway
server.port=8086
#consul配置
spring.cloud.consul.host=localhost
spring.cloud.consul.port=8500
spring.cloud.consul.discovery.instance-id=heeb-gateway2
spring.cloud.consul.discovery.serviceName=heeb-gateway
spring.cloud.consul.discovery.hostname=localhost
4.普通微服務配置,啟動後修改端口和instance-id,然後再啟動一個執行個體,注意保持serviceName不變
spring.application.name=heeb-online
server.port=8084
#consul配置
spring.cloud.consul.host=localhost
spring.cloud.consul.port=8500
spring.cloud.consul.discovery.instance-id=heeb-online
spring.cloud.consul.discovery.serviceName=heeb-online
spring.cloud.consul.discovery.hostname=localhost
5.檢視consul ,發現gateway和online已啟動兩個節點并且已經注冊到consul上
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHLz0kaNBzY610dNpHW4Z0MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLwYTNwUzNzYTMwMjNwEjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
6.用Nginx反向代理,代理gateway的 兩個端口https://blog.csdn.net/qq_30374237/article/details/107251672?spm=1001.2014.3001.5501
7.用準備好的微服務接口,通路Nginx啟動的IP和端口,會發現随機通路gateway和online的兩個節點