Nacos 2.3.0 正式发布,堪称最强!

点击关注公众号,Java干货及时送达3461c1ed5a5323358ea520ac4ba08b58.png

推荐学习:几乎涵盖了 Spring Boot 所有操作


大家好,我是栈长。

Nacos 2.3.0 前几天正式发布了,新增了不少实用性的新功能,真是史上最强版本。

cc3ffe104d7e23c83b978035e155adf7.png

Nacos 2.3.0 还真是一个比较重要的大版本,因为它涉及了太多重大更新,今天栈长给大家来解读下。

Nacos 先扫个盲:

Nacos 一个用于构建云原生应用的动态服务发现、配置管理和服务管理平台,由阿里巴巴开源,致力于发现、配置和管理微服务。

说白了,Nacos 就是充当微服务中的的注册中心和配置中心。

Nacos 2.3.0 新特性

1. 反脆弱插件

Nacos 2.2.0 版本开始加入反脆弱插件,从 2.3.0 版本开始正式转正可用。

Nacos Control Plugin ,即反脆弱插件,即防止服务端变得脆弱,它的主要用途是保护 Nacos 服务端避免出现大规模故障,就算在高压情况下也能快速拒绝请求,防止过多的资源访问导致服务端资源耗尽引起的大面积不可用。

反脆弱插件的具体实现策略就是,当访问服务端的某种资源的频率或次数达到一定程度时,则限制其访问。

Nacos 支持通过 SPI 的方式注入反脆弱相关插件,并支持在 application.properties 配置文件中配置一个反脆弱插件的实现,SPI 机制的灵活性可以大大增加了反脆弱插件的扩展灵活性,这个机制也贯穿了阿里系开源框架。

2. 服务端及客户端间的能力协商机制

我们都知道,Nacos 分为服务端和客户端,随着 Nacos 版本越来越高,功能越来越多,不同版本间对新增功能支持程度也会很大的差异。

当版本和功能越来越多的时候,如果版本不一致,两者的通信可能存储一定的兼容性问题。比如,服务端有这个功能,而客户端的版本不支持,这样就会产生兼容性问题,也会带来多余和通信开销。

在 Nacos 2.3.0 之前的版本中,Nacos 中的很多能力都是根据版本号来判断的,可读性、可维护性和可扩展性都很差。所以,Nacos 2.3.0 新增了一个客户端和服务端之间的能力协商机制。

这个能力协商机制,可以让连接的双方都知道对方能支持的所有功能,以便双方都开启对应的功能并进行相应的操作,避免盲目的试错带来的系统性问题及额外开销。

3. 配置变更插件

Config Change Plugin,即配置变更插件,可用于 Nacos 配置中心能在配置发生变更时,通知一些特定系统,比如,可用于发送配置变更记录、变更提醒及警告、审计等功能等。

在 Nacos 2.3.0 之前的版本中,Nacos 只能通过模拟客户端订阅配置的方式实现,这种方式存在许多的局限性。所以,Nacos 2.3.0 正式推出了 Nacos 配置变更插件。

该插件也支持通过 SPI 的方式注入配置,也支持用户自定义配置变更插件,可以对配置变更前,和变更完成后分别执行一些自定义逻辑,如格式校验,白名单校验,webhook 通知等,相比之前的方式要更强大、更灵活。

插播一条:如果你近期准备面试跳槽,点击Java面试库小程序刷题吧,共 2500+ 道,几乎覆盖了所有主流 Java 技术面试题。

4. 更多新特性

Nacos 2.3.0 还新增了以下几个重要特性:

  • 支持通过 gRPC 注册或注销持久化实例。

  • 支持 gRPC 使用 SSL 连接。

  • 支持 Nacos 客户端请求服务器异常指标。

  • 支持当客户端请求实例 ID 为空时自动创建 ID。

  • 支持在控制台中获取更多模块状态和开关。

  • 支持验证大多数的请求参数。

  • 支持在控制台 UI 中配置 toml 格式。

  • 支持批量注销服务实例。

  • 支持禁用控制台 UI 并添加引导信息。

我就不一一介绍了,感兴趣的都可以关注一下这些特性。

Spring Cloud Alibaba & Nacos

现在 Spring Cloud Alibaba 微服务技术非常火啊,但早期的许多 Spring Cloud Netflix 相关组件,比如 Eureka 2.x、Ribbon、Zuul、Hystrix…等这些,它们都早已停止维护更新了,属于老破旧技术了,我劝大家别再浪费时间学这些了。

鉴于 Spring Cloud 各种组件的停止维护,学习 Spring Cloud Alibaba 是目前最正确的姿势:

  • Spring Cloud Alibaba 基于 Spring Cloud 构建,提供了对 Alibaba 组件的封装而已,比如:Nacos、Sentinel 等,其最顶层的抽象还是 Spring Cloud,所以学习 Spring Cloud Alibaba 就是学习 Spring Cloud。

  • Spring Cloud Alibaba 作为 Spring Cloud 的官方顶级项目,也是国内最强微服务框架及事实上的标准,没有之一。

Spring Cloud Alibaba 最新技术栈如下:

组件Spring Cloud NetflixSpring Cloud Alibaba
注册中心Eureka 1.x
Eureka 2.x(停止维护)
Nacos
配置中心Archaius(停止维护)Nacos
服务容错Hystrix(停止维护)Sentinel
消息队列-RocketMQ
分布式事务-Seata

可以看到,Nacos 是 Spring Cloud Alibaba 微服务体系中最重要的成员之一,Nacos 同时扮演了注册中心和配置中心的双重角色,并且用过 Nacos 的都知道它功能和性能都非常强悍。

如今,Nacos 变得越来越强了,作为 Spring Cloud Alibaba 的主要成员之一,不管是工作需要,或者是跳槽面试,Nacos 都是必学的,它已成为了 Java 程序员必备的技术之一,所以,大家有时间还是要多更新一些技能储备。

最后,如果你想系统学习 Spring Cloud Alibaba 微服务,建议报名栈长最新出品的《Spring Cloud Alibaba 微服务课程》,一次付费,后续都提供免费更新,永久学习。

06d23d8cb308fc831375e7507cf79de6.png

从本页面订阅本课程的还赠送Java面试库VIP 一年,这个我已经帮助许多小伙伴进入大厂,价值过万,订阅后请根据指引领取。

好了,今天的分享就到这里了,后续栈长也会继续关注并分享更多的 Java 技术干货,关注公众号Java技术栈第一时间推送。

参考资料:

  • https://github.com/alibaba/nacos/releases/tag/2.3.0

  • https://nacos.io/zh-cn/

版权声明:本文系公众号 "Java技术栈" 原创,转载、引用本文内容请注明出处,抄袭、洗稿一律投诉侵权,后果自负,并保留追究其法律责任的权利。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Java技术栈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值