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

最后编辑于:2024-11-12 20:14:55
© 著作权归作者所有,转载或内容合作请联系作者

喜欢的朋友记得点赞、收藏、关注哦!!!

相关推荐
wuminyu17 分钟前
JDK21中虚拟线程和FFM协同实现高并发源码剖析
java·linux·c语言·jvm·c++
草莓橙子碗26 分钟前
Claude 使用指南
开发语言·python
SWAGGY..29 分钟前
【C++进阶】:(1)继承机制详解
java·jvm·c++
longxiaozhang61 小时前
C# Array类:数组其实没那么难
开发语言·c#
码匠许师傅1 小时前
【C++ 面试真题】27. 聊聊 C++ 的内存泄漏与内存布局
java·c++·面试
互联网中的一颗神经元2 小时前
06. Small 对象分配:mcache 无锁路径
开发语言·golang
PPPPickup2 小时前
金证秋招笔试
java·开发语言
不正经学生2 小时前
C语言结构体:自定义数据类型,让变量打包出行
java·c语言·开发语言·数据结构·算法
ycjunhua2 小时前
Spring AI 2.0 GA:ToolCallingAdvisor 重构与 Java Agent 新范式
java·人工智能·spring
老一岁2 小时前
c问题总结(1)
c语言·开发语言