SpringCloud(二)—-Ribbon简介

SpringCloud(二)—-Ribbon简介

一、Ribbon简介

在之前我们已经学习过服务器的负载均衡,通过nginx实现的。既然有服务器的负载均衡,那也有客户端的负载均衡,就是Ribbon。
在这里插入图片描述

执行流程:

用户向nginx发起请求,nginx根据权重访问所代理中的一个服务器,也就是applicationClient,applicationClient通过ribbon进行负载均衡算法计算出访问的application service的uri,根据uri访问applicationservice

二.为什么叫做ribbon 叫做客户端负载均衡

由于Ribbon是在ApplicationClient方使用,所以称为客户端负载均衡

三.Ribbon原理

在项目开发中,所有的项目都会注册到Eureka中,允许不同项目的spring.application.name相同的,当相同时会认为这些项目是一个集群.
ApplicationClient会从Eureka中根据spring.application.name加载ApplicationService的列表,根据设定的负载均衡算法,从列表中取出一个URL,到此Ribbon的事情就结束了,剩下的事情由程序员自己进行技术选型,选择一个HTTP协议工具,通过这个URL调用service

注意:以下事情和Ribbon没有关系的
Application Service注册到Eureka过程。这是Eureka的功能。
Application Client从Eureka取出注册列表。这是Eureka的功能。
Application Client 通过URL访问Application Service。具体实现可以自己进行选择使用哪个HTTP工具。

只有Application Client从Eureka中取出列表后进行负载均衡算法的过程和Ribbon有关系。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/2331.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 深拷贝和浅拷贝的区别,说法正确的是_前端浅拷贝和深拷贝的区别

    深拷贝和浅拷贝的区别,说法正确的是_前端浅拷贝和深拷贝的区别首先,明确一点深拷贝和浅拷贝是针对对象属性为对象的,因为基本数据类型在进行赋值操作时(也就是拷贝)是直接将值赋给了新的变量,也就是该变量是原变量的一个副本,这个时候你修改两者中的任何一个的值都不会影响另一个,而对于对象或者引用数据来说在进行浅拷贝时,只是将对象的引用复制了一份,也就内存地址,即两个不同的变量指向了同一个内存地址,那么在改变任一个变量的值都是该变这个内存地址的所存储的值,所以两个变量的值都会改变。一、clone()方法在Java中是用clone()方法实现深拷贝的,比如以下代码在Jav

    2022年10月1日
    2
  • netstat命令参数和使用详解

    netstat命令参数和使用详解netstat-Printnetworkconnections,routingtables,interfacestatistics,masqueradeconnections,andmulticastmembershipsnetstat-打印网络连接、路由表、接口统计、伪装连接和多播成员关系参数usage:netstat[-…

    2022年5月7日
    48
  • 10种方法缓解所显示器造成的眼睛疲劳

    10种方法缓解所显示器造成的眼睛疲劳

    2021年9月18日
    44
  • Android 修改host文件的3种方法

    Android 修改host文件的3种方法Android修改hosts文件的方法介绍本文介绍三种Android手机修改hosts文件的方法,但修改hosts文件一定要谨慎:Android手机hosts文件的换行符必须是n而不是windows的rn,使用Notepad++打开hosts文件,依次点击菜单中的“视图–显示符号–显示所有字符”,如果行末是LF就没问题,CRLF结束则需要…

    2022年10月10日
    2
  • WebStorm 2021.12.13激活【2021免费激活】「建议收藏」

    (WebStorm 2021.12.13激活)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~23EQ…

    2022年3月30日
    63
  • The database disk image is malformed_数据库sqlite

    The database disk image is malformed_数据库sqlite一.问题分析此问题的提示也就是数据库文件损坏。如果在程序访问数据库期间拷贝是很容易出现该问题的,断开所有连接去拷贝在实际项目中有时候是不现实的,所以我们有时去做一下手动修复。二.问题修复1.下载sqlite3.exe到本地,并将损坏的数据库文件拷贝到同一个目录2.打开命令行工具(CMD),进入到sqlite3.exe所在目录3.使用sqlite3.exe打开损坏的数据库文件,并导出sql语句到临时文件E:\sqlite>sqlite3.exe2022_03_03

    2025年9月3日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号