Nginx和Ribbon实现负载均衡的区别

Nginx和Ribbon的区别

1. Nginx服务器端负载均衡:

1、Nginx是客户端所有请求统一交给nginx,由nginx进行实现负载均衡请求转发,属于服务器端负载均衡。即请求有nginx服务器端进行转发。

3、Nginx是服务端的负载均衡,Ribbon是客户端的负载均衡

4、Nginx是集中式的负载均衡,Ribbon是消费者内部线程实现的负载均衡

2. Ribbon客户端负载均衡:

1、Ribbon是从eureka注册中心服务器端上获取服务注册信息列表,缓存到本地,让后在本地实现轮训负载均衡策略。即在客户端实现负载均衡。

2、. 两者应用场景的区别:

Nginx适合于服务器端实现负载均衡 比如Tomcat ,Ribbon适合与在微服务中RPC远程调用实现本地服务负载均衡,比如Dubbo、SpringCloud中都是采用本地负载均衡。

一、为什么说Nginx是服务端的负载均衡,Ribbon是客户端的负载均衡呢?

1.用户发送请求到nginx,nginx是服务端。

2.Ribbon是微服务之间通信的负载均衡,订单服务调用商品服务时,订单服务就是客户端,商品服务就是服务端。

二、为什么说Nginx是集中式的负载均衡,Ribbon是消费者内部线程实现的负载均衡呢?

1.nginx是所有请求都会通过nginx进行分发,所以是集中式的负载均衡。

2.订单服务在调用商品服务时,在订单服务内部通过Ribbon的负载均衡算法选出商品服务后进行调用,所以是消费者内部线程实现的负载均衡。

相关推荐
NicolasCage10 小时前
解决苍穹外卖WebSocket连接失败的问题
nginx
维尔切14 小时前
Nginx 反向代理与负载均衡
运维·nginx·负载均衡
知白守黑26714 小时前
反向代理和负载均衡
运维·负载均衡
vadvascascass14 小时前
平滑加权轮询负载均衡的底层逻辑
java·算法·负载均衡
yunmi_1 天前
Spring Cloud Netfilx -- Ribbon:负载均衡工具(代码示例)
spring cloud·ribbon·maven·负载均衡
Justin_192 天前
nginx反向代理与缓存功能
运维·nginx
苹果醋32 天前
数据结构其一 线性表
java·运维·spring boot·mysql·nginx
java干货2 天前
我用Nginx做了负载均衡,还需要API网关吗?
运维·nginx·负载均衡
東雪蓮☆2 天前
LNMP 环境部署 WordPress
linux·运维·mysql·nginx·php
-dcr3 天前
22.Nginx 服务器 LNMP项目
运维·服务器·nginx·php·lnmp