spring cloud集成ribbon负载均衡怎么实现
发表于:2024-11-20 作者:千家信息网编辑
千家信息网最后更新 2024年11月20日,这篇文章主要介绍"spring cloud集成ribbon负载均衡怎么实现",在日常操作中,相信很多人在spring cloud集成ribbon负载均衡怎么实现问题上存在疑惑,小编查阅了各式资料,整理
千家信息网最后更新 2024年11月20日spring cloud集成ribbon负载均衡怎么实现
这篇文章主要介绍"spring cloud集成ribbon负载均衡怎么实现",在日常操作中,相信很多人在spring cloud集成ribbon负载均衡怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"spring cloud集成ribbon负载均衡怎么实现"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
本文比较简单集成ribbon,如需要更详细,请查看我的更多博客内容。
首先创建两个服务提供者
服务一,集成的nacos注册中心,这块随便写一个同名接口
端口配置8301
服务二,同名接口内容修改,其他跟上一个服务一大体内容一致
端口配置成8302
创建服务消费者
RibbonConfig.java
package com.example.nacosribbonconsumers.config;import com.netflix.loadbalancer.IRule;import com.netflix.loadbalancer.RoundRobinRule;import org.springframework.cloud.client.loadbalancer.LoadBalanced;import org.springframework.cloud.netflix.ribbon.RibbonClient;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.client.RestTemplate;@Configuration// 如果多个服务可以选择不同的策略/*@RibbonClients({ @RibbonClient(name = "other",configuration = OtherConfig.class), @RibbonClient(name = "provider",configuration = ProviderConfig.class)})*/@RibbonClient(name = "nacos-ribbon-provider")public class RibbonConfig { //定义负载均衡规则 @Bean public IRule ribbonRule(){ return new RoundRobinRule(); /** * RoundRobinRule: * 轮询规则 * * RandomRule: * 随机规则 * * WeightedResponseTimeRule: * 使用响应时间的平均或者百分比为每个服务分配权重的规则,如果没法收集响应时间信息,会默认使用轮询规则 * * BestAvailableRule: * 会先根据断路器过滤掉处于故障的服务,然后选择并发量最小的服务 * * ZoneAvoidanceRule: * 根据server所在Zone和其性能,选择服务器,默认规则 * * AvailabilityFilteringRule: * 先根据断路器规则过滤掉有问题的服务,然后对剩余的服务按照轮询的策略进行访问 * * RetryRule: * 先按照RoundRobinRule规则进行服务获取,如果调用服务失败会在指定时间内进行重试,直到获取到可用的服务。 */ } @Bean @LoadBalanced public RestTemplate restTemplate(){ return new RestTemplate(); }}
RibbonTest.java
package com.example.nacosribbonconsumers.controller;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RestController;import org.springframework.web.client.RestTemplate;@RestControllerpublic class RibbonTest { @Autowired private RestTemplate restTemplate; @GetMapping(value = "/ribbon-consumers/ribbon-test") public String printProviderLog(){ String result = restTemplate.getForObject("http://nacos-ribbon-provider/ribbon-test", String.class); return result; }}
pom包
org.springframework.cloud spring-cloud-starter-netflix-ribbon
配置文件
先启动两个服务提供者,然后在启动服务消费者,浏览访问
到此,关于"spring cloud集成ribbon负载均衡怎么实现"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
服务
规则
均衡
学习
内容
时间
更多
选择
配置
两个
接口
提供者
断路器
消费者
端口
策略
问题
帮助
消费
不同
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
政府单位网络安全应急预案
计算机三级网络技术地址汇聚
防范网络安全风险知识宣传
关于网络安全知识的周记
wps数据库什么意思
服务器远程批量管理软件
如何开启服务器权限管理
nba2k中转服务器连接失败
软件开发交付超时怎么陪
网络安全1号案
山东航空软件开发待遇
软件开发到发版的流程
h2 数据库 忘记密码
一次查询多张表的数据库
pg数据库怎么进
数据库的导出与导入的软件
拓扑网络技术有限公司面试题
京都大学网络安全博士
图腾设计软件开发
互联网 时代下的网络安全
绝地求生怎么关闭服务器模式
句容招工软件开发
生物医学文献数据库用户名和密码
文本数据库建设需求
数据库三级模式的内模式
2022云南省普通高等学校招生考生服务器
基本农田数据库标谁
网络安全法解析
软件开发学生买什么电脑
鼎捷软件开发多少钱