gateway网关负载均衡策略

article/2025/10/28 13:33:48

前言 

之前作业是使用 nacos注册中心来搭建有一个微服务,消费者必然要用到gateway网关来操作路由,并且配置负载均衡策略。

搭建微服务-文章链接:快速搭建微服务-Nacos_一码超人的博客-CSDN博客_微服务搭建nacos

 添加一个gateway模块

 配置文件application.yml

server:port: 8877
spring:application:name: java-gatewaycloud:nacos:discovery:server-addr: 127.0.0.1:8848gateway:# 结合nacosdiscovery:locator:enabled: trueroutes:- id: java-provider # 标识,这里写了服务名城管uri: lb://java-provider # nacos中调用的服务名称predicates:- Path=/java/** # 简化路由,将java-provider改为javafilters:- StripPrefix=1

 访问服务:http://127.0.0.1:8877/java/**

 默认是轮询策略,loadbalancer有两种策略,一个是轮询一个便是随机。关于权重策略可以在nacos后台进行修改 。

 修改为随机策略,添加配置类。

package com.example.gateway.config;import org.springframework.cloud.client.ServiceInstance;
import org.springframework.cloud.loadbalancer.core.RandomLoadBalancer;
import org.springframework.cloud.loadbalancer.core.ReactorLoadBalancer;
import org.springframework.cloud.loadbalancer.core.ServiceInstanceListSupplier;
import org.springframework.cloud.loadbalancer.support.LoadBalancerClientFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.core.env.Environment;public class LoadBalancerConfig {@BeanReactorLoadBalancer<ServiceInstance> randomLoadBalancer(Environment environment,LoadBalancerClientFactory loadBalancerClientFactory) {String name = environment.getProperty(LoadBalancerClientFactory.PROPERTY_NAME);return new RandomLoadBalancer(loadBalancerClientFactory.getLazyProvider(name, ServiceInstanceListSupplier.class),name);}
}

启动类,添加注解。

package com.example.gateway;import com.example.gateway.config.LoadBalancerConfig;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.loadbalancer.annotation.LoadBalancerClients;@SpringBootApplication
@LoadBalancerClients(defaultConfiguration = LoadBalancerConfig.class)
public class GatewayApplication {public static void main(String[] args) {SpringApplication.run(GatewayApplication.class, args);}
}

测试结果


http://chatgpt.dhexx.cn/article/JMI1uRZB.shtml

相关文章

OpenFeign修改负载均衡策略

文章目录 前言一、如何实现二、实现步骤1. 创建一个配置类来把选择的负载均衡策略注册进容器2. 主启动类添加注解 总结 前言 在SpringCloud中&#xff0c;Ribbon可以实现服务调用和负载均衡&#xff0c;而OpenFeign基于注解加接口的服务调用方式比Ribbon看起来更加简洁&#x…

负载均衡策略 -- 轮询

我们可以先来看一下&#xff0c;现在我们在工地上&#xff0c;老板呢找了三个人来搬砖。 由于我们是使用的是轮询的策略&#xff0c;所以我们是这三个工地上的人在搬砖的时候&#xff0c;他们其实工作量是平均分配的。 比如说我们有砖头来第一块&#xff0c;我们会交给第一个…

【运维篇】负载均衡策略

文章目录 集中式负载均衡、进程内负载均衡几种常见的四层负载均衡的工作模式。&#xff08;凤凰架构&#xff09;负载均衡策略一、四层、七层负载均衡简介1、四层负载均衡2、七层负载均衡3.四到七层负载均衡区别 二、四层负载均衡实现&#xff1a;kube-proxy三、七层负载均衡实…

负载均衡及常见解决策略

负载均衡及常见解决策略 什么是负载均衡&#xff08;Load Balance&#xff09; 分布式系统中一个非常重要的概念&#xff0c;当访问的服务具有多个实例时&#xff0c;需要根据某种“均衡”的策略决定请求发往哪个节点&#xff0c;这就是所谓的负载均衡&#xff0c;原理是将数据…

面试官:什么是负载均衡?常见的负载均衡策略有哪些?

点击关注公众号&#xff1a;互联网架构师&#xff0c;后台回复 2T获取2TB学习资源&#xff01; 上一篇&#xff1a;Alibaba开源内网高并发编程手册.pdf 一、负载均衡 负载均衡是云计算的基础组件&#xff0c;是网络流量的入口&#xff0c;其重要性不言而喻。 什么是负载均衡呢&…

Ribbon负载均衡策略

目录 1.基于Ribbon方式的负载均衡&#xff0c;Netflix默认提供了七种负载均衡策略&#xff0c; 2. LoadBalanced 1.基于Ribbon方式的负载均衡&#xff0c;Netflix默认提供了七种负载均衡策略&#xff0c; 对于SpringCloud Alibaba解决方案中又提供了NacosRule策略&#xff0…

nginx - 负载均衡配置-负载均衡策略

目录 知识点1&#xff1a;网站流量分析指标 什么是pv&#xff1f; 什么是uv&#xff1f; 什么是IP&#xff1f; 知识点2&#xff1a;正向代理和反向代理 知识点3&#xff1a;负载均衡实验 什么是负载均衡&#xff1f; IP地址规划&#xff1a; 实验拓扑图 知识点4&…

负载均衡

流量负载均衡介绍 1 负载均衡产生的背景 LB&#xff08;Load Balance&#xff0c;负载均衡&#xff09;是一种集群技术&#xff0c;它将特定的业务&#xff08;网络服务、网络流量等&#xff09;分担给多台网络设备&#xff08;包括服务器、防火墙等&#xff09;或多条链路&a…

Ribbon七种负载均衡策略详解

Ribbon是什么&#xff1f; 主要负责请求分发&#xff0c;例如一个服务节点集群&#xff1a;六台服务器部署着订单服务&#xff0c;用户请求过来了就要根据不同的负载策略分发请求到不同机器上&#xff0c;起到一个缓解请求压力的作用。其自身不会发起请求&#xff0c;这个在源…

负载均衡有哪些常见策略?

分析&回答 轮循 Round Robin 这种方法会将收到的请求循环分配到服务器集群中的每台机器&#xff0c;即有效服务器。如果使用这种方式&#xff0c;所有的标记进入虚拟服务的服务器应该有相近的资源容量 以及负载相同的应用程序。如果所有的服务器有相同或者相近的性能那么选…

负载均衡策略-七种策略

LoadBalancer LoadBalancer下面更底层的7种内置的负载均衡策略 RandomRule - 随性而为 RoundRobinRule - 按部就班 RandomRule是随性而为挑选节点&#xff0c;RobinRule却按部就班从一个节点一步一步地向后选取节点&#xff0c;既不会跳过一个&#xff0c;也不会原地踏步&am…

【Nginx】Nginx服务器之负载均衡策略(6种)

一、关于Nginx的负载均衡 在服务器集群中&#xff0c;Nginx起到一个代理服务器的角色&#xff08;即反向代理&#xff09;&#xff0c;为了避免单独一个服务器压力过大&#xff0c;将来自用户的请求转发给不同的服务器。 二、Nginx负载均衡策略 负载均衡用于从“upstream”模块…

负载均衡策略图文详解

一、「负载均衡」是什么 正如题图所示的这样&#xff0c;由一个独立的统一入口来收敛流量&#xff0c;再做二次分发的过程就是「负载均衡」&#xff0c;它的本质和「分布式系统」一样&#xff0c;是「分治」。 如果大家习惯了开车的时候用一些导航软件&#xff0c;我们会发现…

常用负载均衡及策略图解

文章目录 一、负载均衡二、负载均衡模型分类三、CDN负载均衡四、LVS负载均衡4.1 LVS 支持的三种模式4.1.1 DR 模式4.1.2 TUN 模式4.1.3 NAT 模式 4.2 LVS 基于 Netfilter 的框架实现 五、负载均衡策略是什么六、常用负载均衡策略图解6.1 轮询6.2 加权轮询6.3 最少连接数6.4 最快…

关于0范数、1范数和无穷范数

若 则p范数 p取0时对应0范数&#xff0c;p取1时对应1范数&#xff0c;p取无穷大时对应无穷范数 //LaTeX真的好用 【注意理解】当p取无穷大时&#xff0c;最终只与元素中绝对值最大的元素有关&#xff0c;证明如下&#xff1a;

向量和矩阵的 1范数、2范数

1.向量的范数&#xff1a;0范数&#xff0c;向量中非零元素的个数。 1范数&#xff0c;为绝对值之和。 2范数&#xff0c;就是通常意义上的模。 无穷范数&#xff0c;就是取向量的最大值。 但是向量的范数和矩阵的范数关系不大&#xff0c;百度了好久也没看到狠心的东西&…

向量的范数norm:1范数、2范数、无穷范数;矩阵的行范数、列范数

0范数&#xff1a; 向量中非零元素的个数。1范数&#xff1a; 为绝对值之和。2范数&#xff1a; 通常意义上的模。无穷范数&#xff1a;取向量的最大值。 转自&#xff1a;范数对于数学的意义&#xff1f;1范数、2范数、无穷范数

向量的1范数,2范数,无穷范数,KNN中的Lp距离

L-0范数&#xff1a;用来统计向量中非零元素的个数。 L-1范数&#xff1a;向量中所有元素的绝对值之和。 L-2范数&#xff1a;欧式距离。 L-∞范数&#xff1a;计算向量中的最大值。 你也可以这样理解 1-范数&#xff1a; ║ x ║ 1 │ x 1 │ │ x 2 │ … │ x n │ ║…

范数与模

复数的模 向量的范数 范数&#xff0c;在机器学习中通常用于衡量一个向量的大小&#xff0c;范数的定义如下&#xff1a; P>1 比如如下常见的范数 1-范数&#xff1a;║x║1│x1││x2│…│xn│ &#xff08;曼哈顿距离&#xff09; 2-范数&…