Nacos是一块高可用和高性能的注册中心和配置中心,它是阿里巴巴开源的技术解决方案,具备很强的业务场景性,也就是说它是经历过阿里巴巴大流量验证的,具备很强的可落地性。
目前Nacos最新的版本为2.2.0,这版本改动还是很大的。
特性一
支持批量注册和取消注册,注意这个功能非常的实用,尤其是压测Nacos集群性能的时候,它就会派上大用。
特性二
支持数据源的插件化,也就是说开发人员可以选择多种持久化的数据源,这个就为开发人员持久化分布式配置信息,提供了多种选择,而不是局限于MySQL数据源,其实开发人员不是要关注这个功能,而是要关注它的插件化数据源是怎么实现的。
特性三
利用插件支持Prometheus的服务发现,这一点其实是非常重要的,大家应该知道Prometheus是支持服务发现,总共有如下几种方式:
- 基于文件的服务发现;
- 基于DNS的服务发现;
- 基于API的服务发现:Kubernetes、Consul、Azure、重新标记(target重新打标和metric重新打标);
- 基于K8S的服务发现。
但是原生的Prometheus不支持Nacos服务发现,也就是说新版本的Nacos提供了一个插件,并实现了基于Nacos Open API的服务发现。
重点提示:Prometheus是一款非常好用的监控框架,开发人员一定要去重点关注一下这个框架,对大家是有帮助的。
特性四
支持链路收集,这个功能还没有完善,后面会做调整,主要目的是为了度量Nacos集群的运行状态以及服务运行的状态,这个非常关键,有了这个功能之后,就会为开发人员实时的输出链路数据,这样方便运维开发做Nacos的稳定性建设。
Nacos目前尚无统一的trace统计功能模块,只在config配置中心有部分的trace日志,注册中心尚无trace功能。随着眼前推送轨迹功能需求以及后期诊断系统的设计需要,需要对nacos设计统一的trace模块,实现对Nacos服务注册,服务注销,服务推送,配置发布,配置推送等诸多事件的trace收集统计。
基于Nacos的事件机制设计统一的trace事件收集模块;
完成Nacos 注册中心主要主动操作事件traceEvent设计并埋点:
- 实例注册rpc;
- 实例注册http;
- 实例注销rpc;
- 实例注销http;
- 服务注册;
- 服务注销;
- 注册监听;
- 注销监听;
- 服务推送。
对Nacos 注册中心主要被动操作事件traceEvent设计并埋点:
- grpc断连;
- 被动心跳检测:超时健康状态异常;
- 被动心跳检测:健康状态异常超时实例移除;
- 主动健康检查状态异常。
其实咱们一定要关注Nacos的链路追踪是如何实现的,我相信后面Skywalking这样的分布式链路框架肯定也会支持的。
以上主要是这个版本的重要里程碑功能,Nacos作为拥抱云原生的注册中心和配置中心的技术解决方案,后面的版本迭代会更快,我相信大家也会充分体会到它的好处。
其实大家要想多关注最新的技术,一定要学会去看源码和官方的文档,只要自己够勤奋,很多技术都是摆在那里的。