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

简介: 【二】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的配置中心功能。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
目录
相关文章
|
11月前
|
缓存 负载均衡 监控
135_负载均衡:Redis缓存 - 提高缓存命中率的配置与最佳实践
在现代大型语言模型(LLM)部署架构中,缓存系统扮演着至关重要的角色。随着LLM应用规模的不断扩大和用户需求的持续增长,如何构建高效、可靠的缓存架构成为系统性能优化的核心挑战。Redis作为业界领先的内存数据库,因其高性能、丰富的数据结构和灵活的配置选项,已成为LLM部署中首选的缓存解决方案。
1006 25
|
Cloud Native Java Nacos
springcloud/springboot集成NACOS 做注册和配置中心以及nacos源码分析
通过本文,我们详细介绍了如何在 Spring Cloud 和 Spring Boot 中集成 Nacos 进行服务注册和配置管理,并对 Nacos 的源码进行了初步分析。Nacos 作为一个强大的服务注册和配置管理平台,为微服务架构提供
5211 14
|
负载均衡 Dubbo Java
Spring Cloud Alibaba与Spring Cloud区别和联系?
Spring Cloud Alibaba与Spring Cloud区别和联系?
|
SpringCloudAlibaba 负载均衡 Dubbo
【SpringCloud Alibaba系列】Dubbo高级特性篇
本章我们介绍Dubbo的常用高级特性,包括序列化、地址缓存、超时与重试机制、多版本、负载均衡。集群容错、服务降级等。
2166 7
【SpringCloud Alibaba系列】Dubbo高级特性篇
|
存储 SpringCloudAlibaba Java
【SpringCloud Alibaba系列】一文全面解析Zookeeper安装、常用命令、JavaAPI操作、Watch事件监听、分布式锁、集群搭建、核心理论
一文全面解析Zookeeper安装、常用命令、JavaAPI操作、Watch事件监听、分布式锁、集群搭建、核心理论。
【SpringCloud Alibaba系列】一文全面解析Zookeeper安装、常用命令、JavaAPI操作、Watch事件监听、分布式锁、集群搭建、核心理论
|
人工智能 SpringCloudAlibaba 自然语言处理
SpringCloud Alibaba AI整合DeepSeek落地AI项目实战
在现代软件开发领域,微服务架构因其灵活性、可扩展性和模块化特性而受到广泛欢迎。微服务架构通过将大型应用程序拆分为多个小型、独立的服务,每个服务运行在其独立的进程中,服务与服务间通过轻量级通信机制(通常是HTTP API)进行通信。这种架构模式有助于提升系统的可维护性、可扩展性和开发效率。
5853 2
|
人工智能 自然语言处理 Java
Spring Cloud Alibaba AI 入门与实践
本文将介绍 Spring Cloud Alibaba AI 的基本概念、主要特性和功能,并演示如何完成一个在线聊天和在线画图的 AI 应用。
4502 8
|
人工智能 安全 Java
AI 时代:从 Spring Cloud Alibaba 到 Spring AI Alibaba
本次分享由阿里云智能集团云原生微服务技术负责人李艳林主讲,主题为“AI时代:从Spring Cloud Alibaba到Spring AI Alibaba”。内容涵盖应用架构演进、AI agent框架发展趋势及Spring AI Alibaba的重磅发布。分享介绍了AI原生架构与传统架构的融合,强调了API优先、事件驱动和AI运维的重要性。同时,详细解析了Spring AI Alibaba的三层抽象设计,包括模型支持、工作流智能体编排及生产可用性构建能力,确保安全合规、高效部署与可观测性。最后,结合实际案例展示了如何利用私域数据优化AI应用,提升业务价值。
1986 4
|
缓存 负载均衡 算法
解读 Nginx:构建高效反向代理和负载均衡的秘密
解读 Nginx:构建高效反向代理和负载均衡的秘密
489 2
|
负载均衡 前端开发 应用服务中间件
Tomcat的负载均衡和动静分离(与nginx联动)
总的来说,负载均衡和动静分离是提高Web应用性能的两个重要手段。通过合理的配置和使用,我们可以让Web应用更好地服务于用户。
478 21