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

宁波网站推广软件东莞企业网站建设预算大概多少

宁波网站推广软件,东莞企业网站建设预算大概多少,竞价推广账户托管服务,wordpress 打不开联网文章目录 Ribbon 负载均衡器环境搭建1.依赖2.配置3.修改其默认的负载均衡策略3.1 验证 4.创建自定义的Rule4.1 MyRule()4.2 在配置config类中配置 5.饥饿加载6.我只想访问不想被别的访问 Ribbon 负载均衡器 背景 Ribbon 是一个用于客户端负载均衡的开源…

文章目录

  • Ribbon 负载均衡器
  • 环境搭建
    • 1.依赖
    • 2.配置
    • 3.修改其默认的负载均衡策略
      • 3.1 验证
    • 4.创建自定义的Rule
      • 4.1 MyRule()
      • 4.2 在配置config类中配置
    • 5.饥饿加载
    • 6.我只想访问不想被别的访问

Ribbon 负载均衡器

背景
Ribbon 是一个用于客户端负载均衡的开源库,它是 Netflix 开源的一部分,目前由 Spring Cloud 托管和维护。Ribbon 的主要作用是在微服务架构中管理客户端之间的负载均衡。
作用
作为一个负载均衡器,Ribbon 可以将客户端发起的请求分发到多个服务提供者实例中,以实现负载均衡和高可用性。它可以根据配置的负载均衡策略,在请求发起时选择一个合适的服务提供者实例,使请求能够均匀地分布到不同的实例上,从而提高系统的性能和可扩展性。

负载均衡策略

RoundRobinRule:轮询策略,依次选择每个服务提供者实例。
RandomRule:随机策略,随机选择一个服务提供者实例。
WeightedResponseTimeRule:根据平均响应时间和实例权重进行选择。
BestAvailableRule:优先选择可用性最好的实例。
ZoneAvoidanceRule:避免选择故障区域的实例。
此外,Ribbon 还支持自定义负载均衡策略,通过实现 IRule 接口可以编写自定义的负载均衡规则。
拓展
在 Spring Cloud 中,通过引入 spring-cloud-starter-netflix-ribbon 依赖,可以方便地使用 Ribbon 进行客户端负载均衡。
需要注意的是,从 Spring Cloud 2020 年版本开始,官方推荐使用 Spring Cloud LoadBalancer 替代 Ribbon 进行客户端负载均衡。因此,在最新的项目中,建议使用 Spring Cloud LoadBalancer 来实现负载均衡的功能。

环境搭建

(上一篇采用的搭建环境的方法)传送至上一篇
在之前的基础上需要加入一行新的配置即可
如果新建一个项目加入下方依赖即可

spring boot 版本 2.3.11.RELEASE
对应采用的springcloud

 <properties><java.version>1.8</java.version><spring.cloud.version>Hoxton.SR8</spring.cloud.version><spring.cloud.alibaba.version>2.2.5.RELEASE</spring.cloud.alibaba.version></properties>

1.依赖

<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

2.配置

配置 application.properties

spring.application.name=ribbon-a
server.port = 3030
#Nacos服务发现注册中心
spring.cloud.nacos.discovery.server-addr=192.168.14.3:8848logging.level.com.hb = debug

3.修改其默认的负载均衡策略

轮询 ——> 随机 【ps:其他的也可自行设置】
配置config文件修改默认 策略

@Configuration
public class MyRuleConfig {@Beanpublic IRule rule(){return new RandomRule();}
}

3.1 验证

开启两个nacos,都在统一命名空间下,一个打包以cmd 运行,一个idea运行
1.打包文件
在这里插入图片描述

2.进入该文件夹中#
在这里插入图片描述
3.,记得打开的时候进入 target目录下
在这里插入图片描述

在这里插入图片描述
在启动类上加入@EnableDiscoveryClient,即可在服务中查看到对应的服务

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4.创建自定义的Rule

4.1 MyRule()

@Component
@Slf4j
public class MyRule extends AbstractLoadBalancerRule {@Autowiredprivate NacosDiscoveryProperties nacosDiscoveryProperties;@Autowiredprivate NacosServiceManager nacosServiceManager;private static AtomicInteger count = new AtomicInteger(0);@Override@SneakyThrowspublic Server choose(Object key) {String group = this.nacosDiscoveryProperties.getGroup();DynamicServerListLoadBalancer loadBalancer = (DynamicServerListLoadBalancer)getLoadBalancer();String name = loadBalancer.getName();NamingService namingService = nacosServiceManager.getNamingService(nacosDiscoveryProperties.getNacosProperties());List<Instance> instances = null;instances = namingService.selectInstances(name, group, true);if (CollectionUtils.isEmpty(instances)) {log.warn("no instance in service {}", name);return null;}Instance maxInstance = instances.stream().max(Comparator.comparing(Instance::getWeight)).get();Instance minInstance = instances.stream().min(Comparator.comparing(Instance::getWeight)).get();int count2 = count.addAndGet(1);int mod = count2 % 4; //取模运算  5,10,15,20,25 ...if (mod == 0) {log.debug("count={},mod={},使用min",count2, mod);return new NacosServer(minInstance);} else {log.debug("count={},mod={},使用max",count2, mod);return new NacosServer(maxInstance);}}@Overridepublic void initWithNiwsConfig(IClientConfig iClientConfig) {}
}

4.2 在配置config类中配置

下方是访问4次三次调用权重最大的,一次访问权重最小的
在这里插入图片描述
结果
在这里插入图片描述
也可以在peroperties文件中配置还可以配置全局的但是在我这个版本不行 ,这里只配置啦命名空间为nacos-a的

 nacos-a.ribbon.NFLoadBalancerRuleClassName=com.hb.rule.MyRule

5.饥饿加载

在进行服务调用的时候,如果网络情况不好,第一次调用会超时。
Ribbon默认懒加载,意味着只有在发起调用的时候才会创建客户端。
开启饥饿加载,解决第一次调用慢的问题:

ribbon:
eager-load:
# 开启ribbon饥饿加载
enabled: true
# 配置order-service使用ribbon饥饿加载,多个使用逗号分隔
clients: order-service

开启饥饿加载会在系统加载类的过程中,与连接池进行链接

6.我只想访问不想被别的访问

application.properties 配置文件中加入这个即可
spring.cloud.nacos.discovery.register-enabled=true

http://www.yayakq.cn/news/280130/

相关文章:

  • 铁岭 网站建设网站主办者有效证件电子件
  • 大连市营商环境建设局门户网站聊城seo培训
  • django做网站效率高吗网站制作文案
  • 网站建设方案哪家好 推荐html网页跳转代码到子网页
  • 做英文网站哪家好学校网站 源码
  • 张家口网站建设工作室网站建设自查工作总结
  • 石龙网站开发东阳建设公司网站
  • 产品经理网站开发需求网站如何做微信推广方案设计
  • 网站使用支付接口如何收费周口市做网站
  • 做网站报价表织梦网站模板源码下载
  • 网站建设进度及实过程暴雪安全令
  • 如何与老板谈网站建设.net 手机网站源码下载
  • 淮安制作企业网站新新手手网网站站建建设设
  • 齐河县城乡建设局官方网站建设行业门户网站
  • 网站使用流程图cmd iis重启单个网站
  • 潍坊网站建设 中公北京附近做网站的公司
  • dw如何做网站界面哈什么网一个网站做ppt
  • 你好南京网站销售清单软件永久免费版
  • 哪个网站可以做行程表手机网站开发还是调用
  • 怎么做app和网站购物建立微信群的步骤
  • 做一个网站加优化排名得多少钱海南响应式网站建设方案
  • 软件或网站是怎么做的网站建设大致价格2017
  • 网站建设都需要什么技术人员温江建网站
  • 佛山网站建设推广wordpress分类目录不显示
  • 宣城做网站公司几个免费建立网站的平台
  • 江苏华柯建设发展有限公司网站翻译建设企业网站
  • 沈阳网站网站建设wordpress的模板文件下载
  • 网站下要加个备案号 怎么做找国外客户的网站
  • 大连市城市建设投资集团网站下载类网站 前置备案
  • 微信视频网站怎么做的好网页制作基础教程试卷