ribbion负载均衡和Nginx负载均衡的区别(面试问题)

ribbion负载均衡和Nginx负载均衡的区别

在SpringCloud框架使用哪个好 负载均衡算法写在哪里
1、nginx负载是服务端的负载;ribbion的负载,是代码中微服务的负载(客户端负载);这两个负载并不冲突。

2、服务端负载:用户请求到了nginx以后,nginx负载决定把请求转发到哪台服务器;
(负载的列表是存在nginx服务端的,所以叫服务端负载)

3、客户端负载:ribbon是集成在服务消费端,他的负载是,
首先去注册中心获取到可以提供服务的列表,把这个服务列表缓存到本地
,然后自己决定去调用哪一个服务;(这里列表是存在(注册中心客户端)
,所以一般称为客户端负载)(所以在微服务中,如果注册中心运行期间宕机,
短时间之内并不影响服务消费者向服务生产者的调用。
只是不能获取到及时更新的服务里边,如果其中一个服务挂掉,
消费端并不能收到消息,所以长时间后会影响性能)

4、nginx服务端负载,和ribbion的客户端负载,并不冲突。再时间生产环境中,
一般都是两者共存。用户的请求进来以后,先经过nginx服务端负载,然后再进入微服务网关,执行ribbion的客户端负载;

5、nginx的负载均衡算法需要在nginx.cnf的配置文件的upstream标签里边配置;(轮循、权重、ip_hash)

6、ribbion的负载均衡算法需要在集成ribbion的客户端微服务里边配置,
增加配置类,在实例化ResTTemplate时配置负载方式;
我们项目中,还是用feign做消费端调用比较多,他底层就是集成了ribbion。
自己封装成了类似rpc方式的调用。默认用的是轮循,如果需要修改,
首先启动类里边实例化一个IRule,实例化他的不同接口,就可以实现不同的负载算法(7种)

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值