4-SpringCloud整合服务间的调用即负载均衡

springcloud目录:

1.Spring Cloud简介
2.SpringCloud整合eureka注册中心
3.SpringCloud整合服务注册
4.SpringCloud整合服务间的调用即负载均衡
5.SpringCloud整合Feign调用
6.SpringCloud整合config配置中心
7.SpringCloud整合zuul路由网关

我们复制一个yqx-user服务,改名为yqx-order服务,创建过程和创建yqx-user一模一样

#服务名称
spring.application.name=yqx-order
#端口号
server.port=8200
#在注册中心中进行注册
eureka.client.serviceUrl.defaultZone=http://127.0.0.1:8000/eureka

在RestTemplate注入到spring容器中

image.png

在controller中通过RestTemplate和Ribbon实现服务间的调用
image.png

我们同时启动yqx-user、yqx-order,观察注册中心,已经发现这两个服务已经注册到注册中心了
image.png

然后在浏览器中输入 http://127.0.0.1:8200/getUser 就能看到我们通过yqx-order服务调用到了yqx-order服务,因为我们用的是服务名,yqx-order会去注册中心找到yqx-user服务的实例,然后进行调用,因为yqx-user只有一个实例,只是展示了服务的调用,没有实现负载均衡的效果
image.png

我们再启动一个yqx-user服务,我们先修改IDEA,允许我们一个服务同时启动多个实例,此处的 allow parallel run 在老版本的IDEA中是single Instance Only,需要把这个选项取消,另外别忘记修改端口号。
image.png

image.png

然后启动服务,就会看到yqx-user有两个实例注册到注册中心
image.png

然后在浏览器中刷新 http://127.0.0.1:8200/getUser 就会看到yqx-user会被均衡的调用到
image.png

image.png

你可能感兴趣的:(4-SpringCloud整合服务间的调用即负载均衡)