nginx和feign负载均衡并不冲突

ops/2024/10/21 11:30:29/

负载均衡算法写在哪里
1、nginx负载是服务端的负载;ribbion的负载,是代码中微服务的负载(客户端负载);这两个负载并不冲突。

2、服务端负载:用户请求到了nginx以后,nginx负载决定把请求转发到哪台服务器;
(负载的列表是存在nginx服务端的,所以叫服务端负载)

3、客户端负载:ribbon是集成在服务消费端,他的负载是,首先去注册中心获取到可以提供服务的列表,把这个服务列表缓存到本地,然后自己决定去调用哪一个服务;(这里列表是存在(注册中心客户端),所以一般称为客户端负载)(所以在微服务中,如果注册中心运行期间宕机,短时间之内并不影响服务消费者向服务生产者的调用。只是不能获取到及时更新的服务里边,如果其中一个服务挂掉,消费端并不能收到消息,所以长时间后会影响性能)

4、nginx服务端负载,和ribbion的客户端负载,并不冲突。再时间生产环境中,一般都是两者共存。用户的请求进来以后,先经过nginx服务端负载,然后再进入微服务网关,执行ribbion的客户端负载;

5、nginx负载均衡算法需要在nginx.cnf的配置文件的upstream标签里边配置;(轮循、权重、ip_hash)

6、ribbion的负载均衡算法需要在集成ribbion的客户端微服务里边配置,增加配置类,在实例化ResTTemplate时配置负载方式;我们项目中,还是用feign做消费端调用比较多,他底层就是集成了ribbion。自己封装成了类似rpc方式的调用。默认用的是轮循,如果需要修改,首先启动类里边实例化一个IRule,实例化他的不同接口,就可以实现不同的负载算法(7种)


http://www.ppmy.cn/ops/47169.html

相关文章

【Springboot】——项目的创建与请求参数应用

💻博主现有专栏: C51单片机(STC89C516),c语言,c,离散数学,算法设计与分析,数据结构,Python,Java基础,MySQL,linux&#xf…

Unity Obi Rope失效

文章目录 前言一、WebGL端Obi Rope失效二、Obi Rope 固定不牢三、使用Obi后卡顿总结 前言 Obi 是一款基于粒子的高级物理引擎,可模拟各种可变形材料的行为。 使用 Obi Rope,你可以在几秒内创建绳索和杆子,同时完全控制它们的形状和行为&…

Java线程几种常用方法详细说明

在Java编程中,多线程编程是一个非常重要的主题。它允许我们同时运行多个任务,提高程序的性能和响应速度。在这篇博客中,我们将介绍一些常用的Java线程方法和构造器,并通过示例代码展示如何使用它们。 Thread提供的常用方法 publi…

conda与pip的镜像源与代理设置

conda与pip的镜像源与代理设置 一、前言二、conda镜像源设置2.1conda默认镜像源介绍2.2通过终端设置镜像源2.3通过配置文件设置镜像源 三、pip镜像源设置3.1pip默认镜像源介绍3.2通过终端临时设置镜像源3.3通过配置文件设置一个或多个镜像源 四、conda代理设置4.1通过终端设置代…

Flutter 中的 TooltipTheme 小部件:全面指南

Flutter 中的 TooltipTheme 小部件:全面指南 Flutter 是一个由 Google 开发的跨平台 UI 框架,它提供了丰富的组件来帮助开发者构建美观、响应式的用户界面。在 Flutter 的 Material 组件库中,Tooltip 是一个轻量级的组件,用于在用…

【记录43】el-table @selection-change 数据回显、条件约束、历史回显清除

场景 在其他地方设置好人员&#xff0c;到对应的页面直接在表格中复选设置好的人员。解决方案用到selection-change方法 <el-button click"EchoClick()">回显设置好的人</el-button> <el-table ref"choeck" :data"TableData" s…

机器学习-2-机器学习领域六种基础算法的历史溯源

【机器学习】吴恩达:机器学习的六个核心算法! 原文链接 吴恩达在其创办的人工智能周讯《The Batch》上更新了一篇博文,总结了机器学习领域多个基础算法的历史溯源。 吴恩达回忆他的研究历程中曾有一次抉择: 多年前,在一次项目中,选择算法时,他不得不在神经网络与决策树…

Vue基础(2)响应式基础

一. reactive() 在 Vue3 中&#xff0c;可以使用 reactive() 创建一个响应式对象或数组&#xff1a; <script setup> import { reactive } from vueconst state reactive({ count: 0 }) </script><template><button click"state.count">{…