Nacos安装,服务注册,负载均衡配置,权重配置以及环境隔离

1. 安装

首先从官网下载 nacos 安装包,注意是下载 nacos-server

Nacos官网 | Nacos 官方社区 | Nacos 下载 | Nacos

下载完毕后,解压找到文件夹bin,文本打开startup.cmd 修改配置如下

然后双击 startup.cmd 启动 nacos服务,默认端口是8848,可以在conf文件夹下的application.properties文件中修改端口。点击连接进入管理页面,默认账号密码就是 nacos

二. 服务注册

因为nacos是出自阿里,所以需要添加springcloud-alibaba的管理依赖

注意springboot和springcloud以及springcloud-alibaba-dependencies的版本是否冲突,否则可能会出现一些莫名其妙的问题。我使用的是

springboot-2.6.14,

springcloud-2021.0.5

springcloud-alibaba-dependencies-2.2.5.RELEASE

1.首先 在项目父工程中添加管理依赖,注意是在 <dependencyManagement></dependencyManagement>中添加

bash 复制代码
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>2.2.5.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

2.在模块项目中添加nacos客户端依赖

bash 复制代码
     <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

3.yml文件设置nacos配置信息,

4.启动模块项目,然后就可以在nacos管理界面的服务管理-服务列表中看到启动的模块项目服务

相同的服务可以有多个实例,具体方法参考: SpringCloud--Eureka注册中心服务搭建注册以及服务发现-CSDN博客

三. 负载均衡设置,使得服务之间的调用优先调用本地集群的服务

yml 配置:

四. 服务的权重设置。

权重代表的就是当前集群下,权重高的服务实例被调用的机会次数更多,根据各服务器性能设置

直接在nacos服务列表的具体服务中设置,值为 0-1,0则不会被访问,可以用来对服务版本升级,然后再重启,缓慢调高权重,让少数用户测试完毕后逐渐扩大比例依次升级,实现平滑升级

五.命名空间环境隔离设置

不同的命名空间之内的服务,数据无法相互访问,

默认命名空间为 public

1.新建命名空间。

2.yml中服务配置所处的命名空间

把命名空间的id写入yml

然后重启服务实例, 发现该实例不再属于public,而是新建的dev

相关推荐
回到原点的码农12 小时前
Spring Boot 热部署
java·spring boot·后端
ameyume12 小时前
设计模式之单例模式的线程安全
java
Java烘焙师12 小时前
AI编程实战:从零到一搭建全栈项目
java·架构·树莓派·ai实战
宝耶12 小时前
Java面试题5:List、Set、Map 的区别?各自有哪些实现类?
java·开发语言·list
刘 大 望12 小时前
MCP详细介绍以及IDE和Spring AI中应用
java·ide·人工智能·spring·ai·aigc·ai编程
Cosmoshhhyyy12 小时前
《Effective Java》解读第44条:坚持使用标准的函数接口
java·开发语言
毕设源码-朱学姐12 小时前
【开题答辩全过程】以 基于springBoot的考试成绩管理系统为例,包含答辩的问题和答案
java·spring boot·后端
jing-ya12 小时前
day 60 图论part11
java·数据结构·算法·图论
常利兵12 小时前
Java后端定时任务抉择:@Scheduled、Quartz、XXL - Job终极对决
java·数据库·sql
程序员爱酸奶12 小时前
Java后端工程师成长指南
java·开发语言