spring cloud day02【 ribbon】
来源:互联网 发布:博图v13软件下载 编辑:程序博客网 时间:2024/06/06 02:15
ribbon是一种实现负载均衡的组件,我们知道常见的有nginx,实现负载均衡,nginx实现的主要是服务端的负载均衡,那么ribbon实现的是客户端的负载均衡
一、实现负载均衡
1、 使用默认的负载均衡,由于eureka包含了负载均衡的依赖,所以不需要导入依赖
只需要在实现客户端启动类配置如下注解
2、我们知道负载均衡实现有很多策略,那么默认实现的负载均衡策略是轮询,配置自定义的策略如下,首先我们需要在启动类上声名自定义注解如下
其中 CustomeRibbonConfig是我们自定义的注解 name表示作用于那一个项目。
下面的扫描注解,是因为我们配置的自定义策略会覆盖默认的轮询策略,我们需要对配置的自定义ribbon不扫描。
同时在这里我们可以通过 configuration参数看默认源码是如何实现这个策略的
源码是通过RibbonClientConfiguration 这个类的方法实现配置默认负载均衡策略
ribbon 提供了很多策略,可以进行选择,如下图
下面我负载均衡使用随机策略,代码实现如下
代码配置 @ExcludeFromComponentScan这个自定义注解是为了使componentScan不扫描我们的这个自定义策略。不覆盖原有策略。
二、通过配置实现自定义负载均衡
1、我们通过上面自定义类实现,其实我们可以省去上面复杂的代码,可以简化为如下配置
非常的so easy
2、上面的配置我们都是依赖eureka的,假如我们不依赖eureka,该如何实现ribbon呢
也是非常简单的,我们知道通过eureka通过vip实现映射,那么我们不依赖eureka,就应该做两件事,ribbon禁用eureka,配置服务端vip映射。
配置如下
三、直接使用Ribbon API
客户端使用代码如下,不解释了
官方实例
其它问题
开发时遇到一个很奇葩的错误
服务端名称不能用_下划线
否则在执行如下代码时,由于不能返回值报空指针异常,本人用的是1.4.1.release版本
- spring cloud day02【 ribbon】
- spring cloud-ribbon
- spring cloud ribbon配置
- spring cloud Ribbon
- spring cloud -- Ribbon
- Spring Cloud Ribbon
- spring cloud ribbon
- Spring Cloud Ribbon
- spring-cloud【Ribbon】
- Spring Cloud Ribbon
- Spring Cloud Ribbon--智能路由
- Spring Cloud -- Ribbon负载均衡
- Spring Cloud源码分析Ribbon
- Spring Cloud Eureka+Ribbon+Hystrix
- Spring-Cloud 负载均衡 Ribbon
- 【Spring Cloud】Ribbon负载均衡
- Spring Cloud Ribbon服务重试
- Spring Cloud Ribbon 重试机制
- PHP开发工具的使用
- Spring Boot整合PageHelper 实现数据库分页
- [NOIP] [数论] NOIP2017Day1 小凯的疑惑
- python 数据类型 之 数字类型
- 移动开发提效工具平台收集
- spring cloud day02【 ribbon】
- python find rfind
- 解决Configuration is faulty. Check the Issues view for details. Error while building/deploying project
- leetcode 12 ,13 Integer to Roman &&Roman to Integer 罗马与阿拉伯数组转换
- 算法第11周Palindromic Substrings[medium]
- 通过USB升级程序固件
- SecureCRT自动登录
- 初识dubbo~官方demo学习
- js对象和Object关系、以及js数据类型杂谈