Ribbon(负载均衡)负载均衡
一:配置负载均衡
1、架构图
1、多集群微服务
2、Ribbon在工作时分成两步
一步:先选择EurekaServer,他优先选择找同一个区域内负载均衡较少的Server
二步:在根据用户指定的策略,在从Server获取到的服务注册列表中选择一个对应的地址
二:创建工程微服务提供者
1、创建工程:chserivcecloud-provider-dept-8002/8003
1、选中父工程(chserivcecloud)右击---->new Other--->Maven Module
2、注意Packageing设置为jar模式
1、编辑8002/8003工程pom.xml
1、将8001工程中的pom.xml复制到8002/8003对应的pom.xml中
2、进行复制8001工程中的代码和配置文件
1、将8001工程src/main/java下面所有的代码和包进行拷贝到8002/8003
注意:为了方便区分将主启动类名称改成对应的工程名(DeptProvider8002_Ch.java/DeptProvider8003_Ch.java)
2、将8001工程src/main/resources下面的配置文件和包进行拷贝到8002/8003
注意:将application.yml文件中的端口server改成对应的端口(8002/8003)
3、创建对应的8002/8003数据库
1、在这这里数据库名称springcloud2/springcloud2
2、创建对应的表数据与8001工程对应的数据库表数据一致
3、修改8002/8003工程对应的application.yml文件中数据库连接路径
4、对外曝光的名称必须一致:microserivcecloud-dept
5、修改instance-id:服务对应名称信息(8002/8003)
4、测试
1、先启动3个Eureka集群服务
2、在启动3个Dept(8001/8002/8003)微服务并各自测试通过
http://localhost:8001/dept/get/1
http://localhost:8002/dept/get/1
http://localhost:8003/dept/get/1
3、在次启动消费端(80)并执行访问
http://localhost/consumer/dept/list
4、Ribbon默认是每个提供者轮番的算法执行(值日每周一轮),每次执行查询是不同的数据库
Ribbon就一个负载均衡的客户端组件,可以和其他所需请求的客户端结合使用,和Eureka结合只是一个实例