Ribbon
1.Ribbon是什么
Ribbon是基于NetFix Ribbon实现的一套客户端 负载均衡的工具
将NetFix的中间层连接在一起,Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等.简单说就是在配置文件里列出LB(负载均衡)后面的机器,Ribbon会自动根据某种规则(轮询,随机连接)去链接机器.
2.Ribbon能干什么
负载均衡: 将用户的请求平摊在服务器上,从而达到HA. 常见的负载均衡软件由Nginx , LVS , 硬件F5等
Spring Cloud负载均衡算法可以自定义
负载均衡分为两种
集中式:在消费方和服务方之间使用独立的LB设施(硬件,F5,如: Nginx),然后由设施负责把请求通过某种策略发至服务的提供方(由消费方通过设施发请求到服务方)
进程式:就是将负载均衡的逻辑集成在消费方,消费方从服务注册中心获知有哪些地址可用,然后从里面选一个(Ribbon只是一个类库)
3.配置Ribbon(客户端)
1.在pom加配置
2.修改yml追加Eureka服务注册地址
3.在configBean加注解@LoadBalanced
4.主启动类加注解@EnableEurekaClient
5.修改客户端访问类(真实Eurake的微服务名)
Ribbon和Eurake整合后Consumer(消费端)可以直接调用服务而不用关心 地址和端口号
Feign
1.Feign
是一个声明式的web服务客户端/接口+注解