当前位置: 首页 > news >正文

如何评价一个网站的网站建设弹性盒子做微网站

如何评价一个网站的网站建设,弹性盒子做微网站,做网站一般用什么配置的电脑,什么软件可以找做网站的文章目录什么是Spring Cloud RibbonLB(负载均衡)是什么Ribbon本地负载均衡客户端 VS Nginx服务端负载均衡区别?Ribbon架构工作流程Ribbon Demo搭建IRule规则Ribbon负载均衡轮询算法的原理配置自定义IRule新建MyRuleConfig配置类启动类添加Rib…

文章目录

  • 什么是Spring Cloud Ribbon
  • LB(负载均衡)是什么
    • Ribbon本地负载均衡客户端 VS Nginx服务端负载均衡区别?
  • Ribbon架构工作流程
  • Ribbon Demo搭建
    • IRule规则
    • Ribbon负载均衡轮询算法的原理
    • 配置自定义IRule
      • 新建MyRuleConfig配置类
      • 启动类添加@RibbonClient![在这里插入图片描述](https://img-blog.csdnimg.cn/84677063b6c6433fb78e75c2323f1375.png)
      • 测试
  • Ribbon饥饿加载

什么是Spring Cloud Ribbon

Spring Cloud Ribbon是一个基于Netflix Ribbon的客户端负载均衡器,它是Spring Cloud生态系统中的一部分,用于帮助开发人员构建具有高可用性和弹性的分布式系统。

Ribbon能够将负载分配到多个服务实例之间,以提高应用程序的可用性和性能。在使用Ribbon时,开发人员可以定义可用服务实例的列表,并使用负载均衡算法从该列表中选择一个实例来处理客户端请求。此外,Ribbon还提供了一些其他功能,例如服务实例的健康检查和故障转移机制,以确保在服务实例故障时能够快速切换到其他可用实例。

Spring Cloud Ribbon还集成了Eureka服务发现组件,可以从Eureka注册中心获取可用的服务实例列表。这使得开发人员可以更容易地构建基于微服务的应用程序,并在应用程序中使用客户端负载均衡和服务发现功能。

LB(负载均衡)是什么

LB(负载均衡)是一种将客户端请求均匀地分配到多个服务器或计算机集群中的技术,以提高系统的性能、可用性和扩展性。在负载均衡系统中,负载均衡器接收客户端请求,并将请求转发到可用的服务器或计算机节点上,以平衡服务器的负载和提高系统的性能。

Ribbon本地负载均衡客户端 VS Nginx服务端负载均衡区别?

Ribbon本地负载均衡客户端和Nginx服务端负载均衡是两种不同的负载均衡技术,它们之间有以下区别:

1.位置不同:Ribbon本地负载均衡客户端运行在客户端,而Nginx服务端负载均衡运行在服务器端。

2.负载均衡策略不同:Ribbon本地负载均衡客户端采用客户端负载均衡策略,根据一定的负载均衡算法将客户端请求分配给不同的服务实例。Nginx服务端负载均衡采用服务器端负载均衡策略,将客户端请求先转发到Nginx服务器,再由Nginx服务器将请求分配给不同的后端服务器。

3.功能不同:Ribbon本地负载均衡客户端可以实现微服务架构下的服务发现、负载均衡和故障转移等功能,而Nginx服务端负载均衡可以实现反向代理、SSL终端、缓存等功能。

4.适用范围不同:Ribbon本地负载均衡客户端适用于Java应用程序和Spring Cloud微服务架构中的服务调用,而Nginx服务端负载均衡适用于任何应用程序,包括Web应用程序、数据库、DNS、邮件等服务。

Ribbon架构工作流程

Ribbon负载均衡架构的工作流程如下:

1.服务消费者向服务注册中心获取可用的服务列表。

2.服务消费者使用Ribbon客户端负载均衡器根据一定的负载均衡策略从可用的服务列表中选择一台服务实例。

3.服务消费者向所选的服务实例发起请求。

4.如果所选的服务实例发生故障,Ribbon客户端负载均衡器会自动切换到其他可用的服务实例,保证系统的可用性和稳定性。
在这里插入图片描述

Ribbon Demo搭建

IRule规则

在这里插入图片描述

内置负载均衡规则类规则描述
RoundRobinRule简单轮询服务列表来选择服务器。它是Ribbon默认的负载均衡规则。
AvailabilityFilteringRule先过滤掉故障实例,再选择并发较小的实例
WeightedResponseTimeRule为每一个服务器赋予一个权重值。服务器响应时间越长,这个服务器的权重就越小。这个规则会随机选择服务器,这个权重值会影响服务器的选择。
ZoneAvoidanceRule以区域可用的服务器为基础进行服务器的选择。使用Zone对服务器进行分类,这个Zone可以理解为一个机房、一个机架等。而后再对Zone内的多个服务做轮询。
BestAvailableRule忽略那些短路的服务器,并选择并发数较低的服务器。
RandomRule随机选择一个可用的服务器。
RetryRule重试机制的选择逻辑

Ribbon负载均衡轮询算法的原理

Ribbon负载均衡的轮询算法原理如下:

客户端向服务端请求时,Ribbon先获取服务实例列表;
Ribbon维护一个计数器,每次请求将计数器加1;
Ribbon将请求按照轮询方式分发给服务实例列表中的每个实例,依次循环分配;
若某个服务实例因故障或网络原因无法提供服务,Ribbon会将该实例从服务列表中剔除;
如果服务实例列表中所有的实例都不可用,则返回错误信息。

配置自定义IRule

书接上回,继续在之前的demo上改造。
修改auth工程。
官方文档明确给出了警告:
这个自定义配置类不能放在@ComponentScan所扫描的当前包下以及子包下,否则我们自定义的这个配置类就会被所有的Ribbon客户端所共享,达不到特殊化定制的目的了。
所以我们需要和路径springcloud区分开
在这里插入图片描述

新建MyRuleConfig配置类

@Configuration
public class MyRuleConfig{@Beanpublic IRule myRule() {// 定义为随机return new RandomRule();}
}

启动类添加@RibbonClient在这里插入图片描述

@RibbonClient(name = "LF-USER", configuration = MyRuleConfig.class)

测试

在这里插入图片描述
访问成功,且多次调用,会发现每次的端口都是随机的。不再轮询

Ribbon饥饿加载

在Ribbon中,饥饿加载(eager-loading)是一种预加载机制,通过在应用启动时提前获取服务实例列表,以减少第一次请求的延迟时间。在默认情况下,Ribbon会在第一次请求到达时才会去获取服务实例列表,这样会造成第一次请求的延迟较高。为了解决这个问题,Ribbon提供了饥饿加载机制,可以在应用启动时预先获取服务实例列表,以加速第一次请求的响应时间。

通过在应用启动时启用饥饿加载,Ribbon会在服务注册中心中获取服务列表,并缓存到本地内存中。这样,当第一次请求到达时,Ribbon就可以直接从本地缓存中获取服务实例列表,而无需再去请求注册中心,从而减少第一次请求的延迟。

饥饿加载可以通过配置ribbon.eager-load.enabled来开启或关闭,默认值为false。如果设置为true,则启用饥饿加载机制,Ribbon会在应用启动时预先获取服务实例列表;如果设置为false,则禁用饥饿加载机制,Ribbon会在第一次请求到达时再去获取服务实例列表。
例如:

ribbon:eager-load:enabled: true
http://www.15wanjia.com/news/176182.html

相关文章:

  • 怎么快速搭建网站网站开发社交网络功能的作用
  • 新网站建设服务公司有了网站怎样做公众号
  • wordpress图片生成插件seo的宗旨是
  • 旅游网站的设计与制作html苏州网站关键字优化
  • 一个域名可以做几个网站吗网站建设以及运营方面
  • 检查网站的跳转路径是否清晰 哪里要优化销售单软件永久免费版
  • 做网站是干什么的网站的公告轮播效果怎么做
  • 二 网站建设的重要性wordpress主题 餐饮
  • 东莞网站建设哪家最好大宗交易平台软件
  • 怎样做免费企业网站推广网络怎么做
  • wordpress工单主题重庆seo博客推广
  • 家具品牌网站怎么建个人网站
  • 网站怎么更换域名网站文章正文可以做内链吗
  • 杭州高端网站建设公司哪家好怎么寻找做有意做网站的客户
  • 做彩票网站需要什么条件如何建网站免费
  • 大庆做网站比较好的公司建站推广什么意思
  • 北京市教学名师奖建设项目网站深圳出台科技支持政策
  • 电子商务网站建设与管理习题答案有哪些制作网站的公司吗
  • 做网站需要学会做哪些东西网站网络优化
  • 学校网站html模板手游推广联盟
  • 上海建设银行营业网站榆林建站网站建设
  • 惠济区建设局网站wordpress灯笼效果
  • 请输入您网站的icp备案信息建设工程信息查询哪个网站好
  • 盐城网站关键词优化可以做网站高仿服装吗
  • 柳州网站建设百度快速排名系统查询
  • 长春建站软件有关网站建设的外文参考文献
  • 如何做淘客网站源码成都百度
  • 如何做网站专题设计招聘专业网站
  • 校园社交网站开发的目的与意义精密电子东莞网站建设技术支持
  • 微信公众号对接网站做照片生成视频制作软件