Nacos 2.0 正式发布,性能提升了 10 倍!!

简介: 一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。通俗点讲,Nacos 就是一把微服务双刃剑:注册中心 + 配置中心,由阿里巴巴于 2018 年开源。

3月20号,Nacos 2.0.0 正式发布了!


Nacos 简介:


一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。


通俗点讲,Nacos 就是一把微服务双刃剑:注册中心 + 配置中心,由阿里巴巴于 2018 年开源。


Nacos 2.0.0

架构模型

新架构:


Nacos 2.0 架构最主要的变化就是增加了对长连接的支持,gRPC 和 Rsocket 实现了长连接 RPC 调用和推送能力。


image.png

新服务模型:

image.png


相比 1.x 有不少的变化。


依赖升级

升级 Nacos Api / Client 模块以支持 JDK 1.8


新特性

Nacos 2.0 新增了 13 个新特性:


增加 gRPC 连接核心功能


配置模块支持 gRPC


命名模块支持 gRPC


客户端支持 gRPC


gRPC 客户端支持重新连接


支持通过 gRPC 推送数据


支持 gRPC 连接事件通知


支持连接负载平衡


支持 gRPC 请求认证


命名模块支持 Jraft 元数据操作


支持基本连接限制


支持健康检查


支持升级和降级


最主要的特性是新增了对 gRPC 框架的支持,gRPC 是一款开源的基于 HTTP/2 标准设计的高性能 RPC 框架,最早由 Google 开源,这也是为啥是 gRPC 名字的原因了。


增强功能

Nacos 2.0 还带来了 6 个增强功能:


异步执行一些耗时的操作


SDK 多语言支持


增加一些度量、日志支持


全面支持自定义实例注册


支持单推当首次订阅服务时


支持通过阈值健康保护


重构

Nacos 2.0 的 2 个重构项:


命名客户端重构网络代理


重构和适配 v1 openAPI


Bug 修复

修复了 14 个 Nacos 1.x 中的 bug


测试

添加 Nacos 2.0 单元测试


性能提升

看下官方对 Nacos 2.0 的测试数据总结:


1)Nacos 2.0 注册性能相比较 Nacos 1.x 总体提升至少 2 倍;


2)Nacos 2.0 查询性能相比较 Nacos 1.x 总体提升至少 3 倍,单机多线程甚至提升了 10 倍;


3)Nacos 2.0 注销实例性能比较 Nacos 1.x 总体提升至少 2 倍。


规划路线图

image.png

Nacos 2.x 到 3.x 整体规划是插件化提升拓展性,提升易用性,到了 3.x 还会计划支持 Service Mesh,这毕竟是未来微服务的发展趋势。


总结

Nacos 2.x 改动还是挺大的,包括底层架构、服务模型,另外,性能也更牛叉,最高性能之处 Nacos 2.0 硬是比 1.x 提升了 10 倍,可想 Nacos 2.x 还是很香的!


另外说下 Spring Cloud Eureka,Eureka 2.0 已经停止维护了:

image.png


现在主流用的都是 Eureka 1.x,看了下仓库,1.x 也几乎也没怎么更新了,这个确实有点伤,其实市面上也有其他替代品, Nacos 就是一个不错的选择,Nacos 可以同时搞定注册中心、配置中心,开源、高性能,发展势头很猛,并且提供了 Spring Cloud 依赖集成。


注册中心:

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
    <version>${latest.version}</version>
</dependency>

配置中心:

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
    <version>${latest.version}</version>
</dependency>

更多参考 Spring Cloud 集成文档:


https://nacos.io/zh-cn/docs/quick-start-spring-cloud.html


更多 Spring Cloud 教程,大家可以关注公众号Java技术栈,在后台回复:spring,可以阅读栈长整理的一系列 Spring C loud 系列教程。


如果你现在使用的 Nacos 1.x,官方也提供了升级教程:


https://nacos.io/zh-cn/docs/2.0.0-upgrading.html


不过目前只支持 Nacos 1.x 到 Nacos 2.0.0-BETA 版本的平滑升级,暂不支持 Nacos 1.x 版本到 Nacos 2.0.0-ALPHA 正式版的平滑升级,后续会支持部分版本到该版本的平滑升级,大家可以关注后续的升级文档。


你们用的啥注册中心呢?来,一起来投票看看大家都用的啥~


最后,觉得我的文章对你用收获的话,动动小手,给个在看、转发,原创不易,栈长需要你的鼓励。


相关文章
|
缓存
npm install 报 npm ERR! cb()never called!的错误
npm install 报 npm ERR! cb()never called!的错误
1762 0
npm WARN deprecated core-js@2.6.12 core-js@<3.3 is no longer maintained and not recommended for usa
npm WARN deprecated core-js@2.6.12 core-js@<3.3 is no longer maintained and not recommended for usa
921 0
|
10月前
|
存储 运维 数据可视化
如何为微服务实现分布式日志记录
如何为微服务实现分布式日志记录
598 1
|
缓存 监控 Java
springboot tomcat性能优化
springboot tomcat性能优化
971 0
|
Prometheus 监控 Cloud Native
使用Spring Boot和Prometheus进行监控
使用Spring Boot和Prometheus进行监控
|
资源调度 JavaScript Windows
'vue-cli-service' 不是内部或外部命令,也不是可运行的程序问题解决
【5月更文挑战第7天】'vue-cli-service' 不是内部或外部命令,也不是可运行的程序问题解决
19582 3
|
运维 Java 数据库
如何实现最终一致性,有哪些解决方案
如何实现最终一致性,有哪些解决方案
1386 0
|
测试技术 Linux 调度
性能测试必备知识(6)- 如何查看“CPU 上下文切换”
性能测试必备知识(6)- 如何查看“CPU 上下文切换”
916 0
性能测试必备知识(6)- 如何查看“CPU 上下文切换”
|
应用服务中间件 nginx 数据格式
Nginx 学习笔记(四)nginx-module-vts模块
看看已经搭建好的效果图 1、基本信息 2、过滤信息 3、上游服务器 4、其他进程  1、获取组区域(默认返回json格式数据) (1)mainZones https://www.tinywan.
3144 0