Nacos注册中心

1.Nacos介绍

Nacos是阿里巴巴的产品,现在是SpringCloud中的一个组件,相对于Eureka 功能更加丰富,在国内受欢迎程度高。Nacos安装地址 Release 1.4.7 (Jan 15th, 2024) · alibaba/nacos · GitHub

2.Nacos安装过程

下载安装包之后,解压到没有中文的路径下,我这里安装在D盘

Nacos默认端口是8848,windows系统可以在cmd窗口输入etstat -ano|findstr "8848"查看端口是否被占用。我的端口显示是闲置的可以使用

如果端口被占用,可以在conf文件夹里面的application.properties里面修改端口

在Nacos的bin目录下输入cmd打开命令窗口输入:startup.cmd -m standalone

启动Nacos

启动成功后在浏览器输入: http://192.168.17.1:8848/nacos/index.html,用户名和密码都是nacos。

3.Nacos服务分级存储模型

我们知道微服务里面的每一个springboot项目就是一个服务,服务对于的端口,例如8080、8081就是服务的实例,一个服务可以包含多个实例,假如说一个服务的不同实例被部署在一个机房,那么如果机房出现问题,这个服务就不能提供,甚至可能导致整个微服务项目崩溃报错,所以为了解决这个问题我们通常会把一个服务的实例分别放置多个机房。同一个机房的实例叫做集群。

服务跨集群调用问题:服务调用尽可能选择本地集群的服务,跨集群调用延迟较高,本地集群不可访问时才会取访问其他集群

Nacos配置集群信息:在application.properties文件里面配置spring.cloud.nacos.discovery.cluster-name属性

4.Nacos根据权重负载均衡

实际部署可能会遇到这种场景,服务器设备性能有差异,部分实例所在机器性能较好,另一些较差,我们希望性能好的机器承担更多的用户请求

Nacos提供了权重配置来控制访问频率,权重越大则访问频率越高。操作步骤如下

a:在Nacos控制台可以设置,权重值,点击编辑按钮,权重(0-1)权重为0不能访问。

权重为0的应用场景,如果系统功能需要升级无需等待用户下线,只需权重设置为0,如何升级服务,在开启服务设置权重,实现平滑升级。

5。Nacos和Eureka的区别

Nacos对于临时实例采用的机制和Eureka一样都是心跳机制,如果实例挂掉就会将其剔除,但是对于非临时实例采用的是主动询问机制,如果服务挂掉不会将其剔除,而是等待。面向消费者时Eureka采用的是拉取,而Nacos采用的是定向拉取和主动推送,如果服务在30s内挂掉会向消费者推送变更消息。

相关推荐
架构师沉默2 小时前
别又牛逼了!AI 写 Java 代码真的行吗?
java·后端·架构
后端AI实验室6 小时前
我把一个生产Bug的排查过程,交给AI处理——20分钟后我关掉了它
java·ai
凉年技术8 小时前
Java 实现企业微信扫码登录
java·企业微信
狂奔小菜鸡9 小时前
Day41 | Java中的锁分类
java·后端·java ee
hooknum9 小时前
学习记录:基于JWT简单实现登录认证功能-demo
java
程序员Terry10 小时前
同事被深拷贝坑了3小时,我教他原型模式的正确打开方式
java·设计模式
NE_STOP10 小时前
MyBatis-缓存与注解式开发
java
码路飞10 小时前
不装 OpenClaw,我用 30 行 Python 搞了个 QQ AI 机器人
java
Re_zero10 小时前
以为用了 try-with-resources 就稳了?这三个底层漏洞让TCP双向通讯直接卡死
java·后端
SimonKing10 小时前
Fiddler抓包完全指南:从安装配置到抓包,一文讲透
java·后端·程序员