ribbon和nginx负载均衡图解

通俗来说

nginx:

规定一个地址v(比如v代理了地址a,b,c,d且他们都实现了同一个服务e),然后当我们的请求想要实现e服务而去请求v的时候,v实际上就会从a,b,c,d中选一个来让他们给请求者提供服务。

ribbon:

在请求服务的时候,先获得注册中心(比V地址上有一个nacos而此nacos在,a,b,c,d四个地址上有服务注册了 )上的服务的列表(此处就获得地址列表[a,b,c,d]),然后从中选一个来为请求提供服务。

也就是说,nginx是服务器端帮请求选服务,而ribbon是请求端帮请求选服务

注:因为nginx是一个反向代理服务器,在配置的时候,就已经给nginx配置了一些服务地址,所以不需要去访问一个nacos来获得服务列表。所以ribbon需要去访问一个nacos来获得服务列表,而nginx不需要

nginx图解:

(当然,你也可以把这一组的A服务换成几个注册的服务的功能完全相同的Nacos,然后在请求A处把A配置为Nacos服务发现源,这样可以在nginx实现负载均衡的同时,让请求A用"d+服务名"的格式访问到服务)

ribbon图解:

注:无论是ribbon还是nginx的图解中,举例中的几个相同的a服务或几个相同的b服务,只是代表一组,功能相同的服务,并不是说,他们名字呀什么都相同,想表达的是他们是一组功能相同的服务

相关推荐
码农娟19 分钟前
Hutool XML工具-XmlUtil的使用
xml·java
草青工作室26 分钟前
java-FreeMarker3.4自定义异常处理
java·前端·python
java1234_小锋36 分钟前
Java中读写锁的应用场景是什么?
java·开发语言
闻哥37 分钟前
从 AJAX 到浏览器渲染:前端底层原理与性能指标全解析
java·前端·spring boot·ajax·okhttp·面试
「QT(C++)开发工程师」39 分钟前
C++ 多种单例模式
java·c++·单例模式
短剑重铸之日43 分钟前
《SpringCloud实用版》统一认证授权:Spring Authorization Server + OAuth2 + JWT 生产级方案
java·后端·spring·jwt·oauth2
哲-哲1 小时前
WVP+ZLM搭建碰到问题
java
编程彩机1 小时前
互联网大厂Java面试:从Spring Cloud到分布式事务的技术场景解析
java·spring cloud·微服务·消息队列·分布式事务
黎雁·泠崖1 小时前
Java内部类与匿名内部类:定义+类型+实战应用
java·开发语言
青槿吖1 小时前
第二篇:JDBC进阶骚操作:防注入、事务回滚、连接池优化,一篇封神
java·开发语言·jvm·算法·自动化