springcloud简单整合ribbon及自定义ribbon规则
springcloud集成ribbon
·
1.Ribbon概念
Spring Cloud 是基于Netflix Ribbon实现的一套客户端,负载均衡工具,服务于客户端的软件负载均衡算法和服务调用。Ribbon内置多中规则(简单轮询,随机,权重等等)去连接机器,默认是轮询,可以自定义负载均衡算法。
2.Ribbon 与 Nginx的区别
Nginx:作为服务器负载均衡,客户端所有请求都会交给nginx,然后由nginx实现转发请求,负载均衡是由服务端实现的。
Ribbon:本地客户端负载均衡,在调用服务接口时,会在注册中心上获取注册信息服务列表之后缓存到JVM本地,从而在本地实现RPC远程调用技术。
3.自定义负载均衡策略
这里定义随机负载均衡策略
引入ribbon依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
</dependency>
新建一个包 **项目同级建
把随机对象注入
@Configuration
public class MySelfRule {
@Bean
public IRule myRule() {
return new RandomRule(); // 定义轮询
}
最后在启动类添加注解
@RibbonClient(name = "CLOUD-PAYMENT-SERVICE",configuration = MySelfRule.class)
最后启动项目请求测试。。。
更多推荐
已为社区贡献1条内容
所有评论(0)