【二】SpringCloud Alibaba之Nacos整合篇(配置负载均衡)

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
简介: 【二】SpringCloud Alibaba之Nacos整合篇(配置负载均衡)

一、改造提供者服务

首先展示一下代码目录结构:

前提:成功注册服务到注册中心Nacos 。

新增controller进行测试,如下:

使用spring的value注解获取配置文件的端口号(上一章运行了两个提供者服务,端口号不同)

@RefreshScope注解是下一章配置中心的东西先不管,不用加。

@Sl4j是日志注解。方便使用log的方法。

二、改造消费者服务

先展示一下目录结构:

新增配置类:

使用@LoadBalanced注解启动负载均衡(基于ribbon实现,默认轮询方式)。

修改配置类:

设置调用方服务的service:与提供者服务的

application:

 name: nacos-provider

保持一致。

新增controller:

同提供者服务类似,通过spring的value注解获取配置里的url地址,通过restTemplate模板调用方法访问提供者服务的接口。

运行项目:

进入nacos查看:

运行成功。

通过postman进行消费者服务的接口测试(调用提供者服务的接口),如下:

81是消费者服务的端口,返回提供者服务的端口,每次调用返回不同的端口(以轮询的方式访问提供者服务的实例)。

三、自定义策略

针对上面的轮询策略,nacos可以实现自定义策略,如下:

进入服务列表,点击详情,进入详情界面,点击编辑按钮

编辑两个实例的权重:

结果如下:

当然仅仅这样改是不会生效的,还需要加一个配置,如下:

加在服务调用方的启动类上 。

四、演示

使用postman演示,如下:

平均下来差不到9次访问9003端口的实例,一次访问9004端口的实例。自定义负载均衡策略生效。

下一章实现nacos的配置中心功能。

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
目录
相关文章
|
10天前
|
负载均衡 算法 Java
Spring Cloud全解析:负载均衡算法
本文介绍了负载均衡的两种方式:集中式负载均衡和进程内负载均衡,以及常见的负载均衡算法,包括轮询、随机、源地址哈希、加权轮询、加权随机和最小连接数等方法,帮助读者更好地理解和应用负载均衡技术。
|
21天前
|
Cloud Native Java Nacos
微服务时代的新宠儿!Spring Cloud Nacos实战指南,带你玩转服务发现与配置管理,拥抱云原生潮流!
【8月更文挑战第29天】Spring Cloud Nacos作为微服务架构中的新兴之星,凭借其轻量、高效的特点,迅速成为服务发现、配置管理和治理的首选方案。Nacos(命名和配置服务)由阿里巴巴开源,为云原生应用提供了动态服务发现及配置管理等功能,简化了服务间的调用与依赖管理。本文将指导你通过五个步骤在Spring Boot项目中集成Nacos,实现服务注册、发现及配置动态管理,从而轻松搭建出高效的微服务环境。
90 0
|
6天前
|
负载均衡 Java Nacos
SpringCloud基础2——Nacos配置、Feign、Gateway
nacos配置管理、Feign远程调用、Gateway服务网关
SpringCloud基础2——Nacos配置、Feign、Gateway
|
23天前
|
Cloud Native Java Nacos
Spring Cloud Config、Apollo、Nacos和Archaius对比
这篇文章对比了Spring Cloud Config、Apollo、Nacos和Archaius这四种配置中心的适应场景、优缺点。文中讨论了它们的功能特点,例如Spring Cloud Config的集中化配置管理和动态刷新能力,Apollo的实时配置推送和权限治理,Nacos的服务发现和管理功能,以及Archaius的动态配置更新能力。文章指出选择配置中心应根据项目需求和架构来决定,并提供了一个对比图来帮助读者更直观地理解这些工具的差异。
34 1
Spring Cloud Config、Apollo、Nacos和Archaius对比
|
6天前
|
负载均衡 Java Nacos
SpringCloud基础1——远程调用、Eureka,Nacos注册中心、Ribbon负载均衡
微服务介绍、SpringCloud、服务拆分和远程调用、Eureka注册中心、Ribbon负载均衡、Nacos注册中心
SpringCloud基础1——远程调用、Eureka,Nacos注册中心、Ribbon负载均衡
|
28天前
|
监控 Linux 应用服务中间件
在Linux中,如何配置负载均衡器?
在Linux中,如何配置负载均衡器?
|
29天前
|
负载均衡 应用服务中间件 Linux
在Linux中,如何配置负载均衡器?
在Linux中,如何配置负载均衡器?
|
30天前
|
负载均衡 监控 前端开发
在Linux中,如何配置负载均衡器以分配网络流量?
在Linux中,如何配置负载均衡器以分配网络流量?
|
28天前
|
资源调度 Java 调度
Spring Cloud Alibaba 集成分布式定时任务调度功能
定时任务在企业应用中至关重要,常用于异步数据处理、自动化运维等场景。在单体应用中,利用Java的`java.util.Timer`或Spring的`@Scheduled`即可轻松实现。然而,进入微服务架构后,任务可能因多节点并发执行而重复。Spring Cloud Alibaba为此发布了Scheduling模块,提供轻量级、高可用的分布式定时任务解决方案,支持防重复执行、分片运行等功能,并可通过`spring-cloud-starter-alibaba-schedulerx`快速集成。用户可选择基于阿里云SchedulerX托管服务或采用本地开源方案(如ShedLock)
|
22天前
|
人工智能 前端开发 Java
【实操】Spring Cloud Alibaba AI,阿里AI这不得玩一下(含前后端源码)
本文介绍了如何使用 **Spring Cloud Alibaba AI** 构建基于 Spring Boot 和 uni-app 的聊天机器人应用。主要内容包括:Spring Cloud Alibaba AI 的概念与功能,使用前的准备工作(如 JDK 17+、Spring Boot 3.0+ 及通义 API-KEY),详细实操步骤(涵盖前后端开发工具、组件选择、功能分析及关键代码示例)。最终展示了如何成功实现具备基本聊天功能的 AI 应用,帮助读者快速搭建智能聊天系统并探索更多高级功能。
167 2
【实操】Spring Cloud Alibaba AI,阿里AI这不得玩一下(含前后端源码)

热门文章

最新文章