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的负载均衡算法选出商品服务后进行调用,所以是消费者内部线程实现的负载均衡。

相关推荐
m0_748251352 小时前
Mac安装配置使用nginx的一系列问题
运维·nginx·macos
web150854159352 小时前
Nginx 配置前端后端服务
运维·前端·nginx
若云止水4 小时前
Ubuntu 下 nginx-1.24.0 源码分析 - ngx_str_rbtree_insert_value
linux·nginx·ubuntu
obboda5 小时前
使用haproxy实现MySQL服务器负载均衡
服务器·mysql·负载均衡
若云止水11 小时前
Ubuntu 下 nginx-1.24.0 源码分析 - ngx_init_cycle 函数 - 详解(4)
数据库·nginx·ubuntu
浪九天14 小时前
Nginx系列05(负载均衡、动静分离)
nginx·运维开发·持续部署
m0_7482365821 小时前
Nginx中$http_host、$host、$proxy_host的区别
运维·nginx·http
web147862107231 天前
Linux(CentOS)安装 Nginx
linux·nginx·centos
阿湯哥1 天前
通过Sidecar模式实现服务注册、服务发现和负载均衡的分布式系统架构
架构·服务发现·负载均衡
Normal Developer1 天前
应用的负载均衡
负载均衡·架构设计·系统设计