Nacos 1.0.0 GA 版本发布了,此版本在架构、功能和 API 设计上进行了全方位的重构和升级。

此版本新特性包括:

注册实例支持 ephemeral 字段

Nacos 1.0.0 版本在 instance 级别上增加了一个 ephemeral 字段,该字段表示注册的实例是临时实例还是持久化实例。如果是临时实例,则不会在 Nacos 服务端持久化存储,需要通过上报心跳的方式进行保活,如果一段时间内没有上报心跳,则会被 Nacos 服务端摘除。在被摘除后如果又开始上报心跳,则会重新将这个实例注册。持久化实例则会持久化到 Nacos 服务端,此时即使注册实例的客户端进程不在,这个实例也不会从服务端删除,只会将健康状态设为不健康。

同一个服务下可以同时有临时实例和持久化实例,这意味着当这服务的所有实例进程不在时,会有部分实例从服务上摘除,剩下的实例则会保留在服务下。

注册实例支持 groupName 字段

客户端注册实例时,可以在方法级别指定要注册的分组名,这个分组名和服务名是对服务的一个二维的标识,二者共同定位一个服务。一个典型的使用分组的例子如下:

namingService.registerInstance("nacos.test.1", "group1", instance);

不指定分组的接口依然是支持的,此时会在服务端为这个服务分配一个默认的分组:DEFAULT_GROUP。

增加了 Server 状态的设置

Nacos 增加了对 Server 状态的控制,所有的状态都定义在 com.alibaba.nacos.naming.cluster.ServerStatus 类里。

各个状态的含义介绍如下:

  • UP:Server 一切正常,读写请求都会被接受;

  • DOWN:Server 异常,所有请求会返回 HTTP 503 错误;

  • STARTING:Server 还在启动中,所有请求返回 HTTP 503 错误;

  • PAUSED:Server 被人工暂停,区别于 DOWN 可能是系统自己检测到异常然后设置 DOWN 状态,PAUSED 状态表示当前 Server 可能是没问题的,只是人工进行了干预;

  • WRITE_ONLY:只有非 GET 请求会被接受;

  • READ_ONLY:只有 GET 请求会被接受;

用户可以使用如下接口来修改集群所有机器的状态,如果再加上 debug=true 参数,则只修改当前机器的状态。

curl -X PUT '$NACOS_SERVER:8848/nacos/v1/ns/operator/switches?entry=overriddenServerStatus&value=READ_ONLY'

同时这个状态是会自适应进行修改的,比如启动时这个状态为 STARTING,等到数据装载完毕,则会自动将状态置为 UP,在运行过程中,如果检测到系统异常如磁盘满,则又会将状态置为 DOWN。不过自适应的状态值优先级要低于使用接口设置的状态值,因此当你想恢复自适应的状态调节的时候,记得将接口 overriddenServerStatus 设置为空。

增加全局推送开关

支持了全局推送开关,可以打开或者关闭服务变更的推送,调用接口如下:

curl -X PUT '$NACOS_SERVER:8848/nacos/v1/ns/operator/switches?entry=pushEnabled&value=false'

关闭推送后,客户端依然会通过轮询的方式来更新到数据,只是更新的速度没有推送那么快。

支持启动时数据预热

在老版本的 Nacos 中,只要 Server 启动成功就会开始对外提供服务,此时服务的数据并不一定完全加载完成,这样可能会导致客户端接收到的数据并不完整。1.0.0 版本增加了数据预热的逻辑,对于持久化数据,则会等待所有数据从磁盘加载完成;对于临时实例这样的非持久化数据,则会等待从其他Server拉取到完整数据。所有数据都准备好之后,才会将 Server 状态置为 UP。

元数据编辑框优化

此前的元数据编辑框需要用户按照指定格式来编辑,容易出错,如下图所示:

1.0.0 版本对服务页面的元数据编辑框进行了优化,在调整编辑框大小的同时,增加语法高亮,方便用户进行编辑和识别格式问题,编辑框预览图如下:

支持 MySQL 8.0 

Nacos 1.0.0 支持了 MySQL 8.0 驱动。

1.0.0 版本的发布标志着 Nacos 已经可以大规模的在生产环境中使用,新版本不仅针对社区的需求和集群的稳定性相应地增加了一些新特性,而且还发布了服务发现模块的性能测试报告,以及完整的 API 列表和架构设计文档。

引用自阿里巴巴中间件公众号发布公告,作者朱鹏飞(花名:敦谷),Github ID: nkorange,阿里巴巴中间件高级开发工程师,Nacos 开源项目负责人,Nacos 注册中心等模块主要贡献者。

详情查看官方发布公告。

Nacos 1.0.0 GA,架构、功能与 API 设计全面重构相关推荐

  1. AOL架构原则.优秀API设计.Yeoman工具

    本期的架构周报主要关注AOL(美国在线)的高可用性架构.技术专家Joshua Bloch对优秀API的设计观点.新的Web应用开发工具集Yeoman和OpenStack网络项目Neutron的介绍. ...

  2. RESTful架构和RESTful API设计总结

    作者:智明书 链接:https://www.jianshu.com/p/955eb2faa354 REST这个词是2000年Roy Fielding在他的博士论文中提出的,Fielding参与了htt ...

  3. Java Web学习总结(44)—— RESTful 架构和 RESTful API 设计总结

    前言 REST这个词是2000年Roy Fielding在他的博士论文中提出的,Fielding参与了http协议的设计,也是Apache web server项目的参与者.他的这篇博士论文可以说对互 ...

  4. nacos配置ap_Nacos 1.0.0 功能预览

    本文来自于我的个人主页:Nacos 1.0.0 功能预览,转载请保留链接 ;) Nacos 1.0.0 是正式 GA 的版本,在架构.功能和API设计上进行了全方位的重构和升级,1.0.0版本标志着N ...

  5. Nacos 发布 1.0.0 GA 版本,可大规模投入到生产环境

    经过 3 个 RC 版本的社区体验之后,Nacos 正式发布 1.0.0 GA 版本,在架构.功能和 API 设计上进行了全方位的重构和升级. 1.0.0 版本的发布标志着 Nacos 已经可以大规模 ...

  6. 国行 iPhone 12/Pro/Max双卡模式支持5G网络;支付宝推出「晚点付」功能;MySQL 8.0.22 GA|极客头条

    整理 | 郑丽媛 头图 | CSDN 下载自东方 IC 「极客头条」-- 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧. 国内 ...

  7. Nacos 1.3.0 发布,一个修炼内功的版本:全新内核构建!

    Na点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | 来源 | 1.3.0版本开始修炼内功,聚焦 ...

  8. 双十一购物节,Nacos 1.4.0 + Go SDK 1.0.1发布

    一年一度的双十一购物节又来了,不知道小伙伴们有没有抢到想要的商品呢? 无论您是否"剁手"成功,Nacos都为社区的各位奉上礼物庆祝双十一 – Nacos 1.4.0和nacos-s ...

  9. Apache Hadoop 3.0.0 GA版正式发布,可以部署到线上

    今天凌晨 Apache Hadoop 3.0.0 GA 版本正式发布,这意味着我们就可以正式在线上使用 Hadoop 3.0.0 了!这个版本是 Apache Hadoop 3.0.0 的第一个稳定版 ...

最新文章

  1. php中jquery ajax请求参数,浅谈Jquery中Ajax异步请求中的async参数的作用
  2. Selenium2(WebDriver)总结(五)---元素操作进阶(常用类)
  3. 人工智能学习--文本识别实践-tesseract-ocr
  4. [html] 如何在不同的端口间共享cookie?
  5. bash mysql 循环输出_Bash实用技巧:同时循环两个列表
  6. 我要重构“软件行业”......
  7. 【Level 08】U06 Good Feeling L5 Now showing in theaters
  8. es-03-DSL的简单使用
  9. c++调试窗口不见了_Sublime Text配置GDB调试环境
  10. ubuntu,win10 释放IP,重新获取IP
  11. 你还在手写 CRUD?试试 MybatisGenerator,再也不用加班了!
  12. js高级学习笔记(b站尚硅谷)-6-IIFE
  13. 用免费WiFi上网软件有什么好处
  14. JAVA计算机毕业设计书籍点评网站源码+系统+mysql数据库+lw文档
  15. ECharts热力图指定颜色
  16. 好玩的WPF第二弹:电子表字体显示时间+多彩呼吸灯特效button
  17. java 由日期计算星期几_java计算日期是星期几
  18. 南邮电工电子实验设计5(单极共射放大电路)
  19. Android虚拟键盘和虚拟触摸驱动
  20. Verilog HDL 程序设计(三)

热门文章

  1. 同步、异步 与 串行、并行的区别
  2. python安装3.7.2_linux环境安装python3.7.2
  3. echarts柱状图同一页面点击不同得按钮切换_不可思议,这个PPT居然有按钮滑动效果...
  4. php三年经验 多少工资_二级建造师一个月可以赚多少钱?
  5. Cell Reports | 佩戴假肢后,真的能产生正确位置的触觉感吗?研究人员表示并不能...
  6. 「一夜白头」有科学依据了,减压可返黑 | 哥伦比亚大学最新研究
  7. 未来AI将会在这10个方向升级|腾讯优图联合厦大发布趋势预测
  8. 图灵奖得主LeCun亲授,深度学习课程在线发布|资源
  9. AI老大哥,正在看着你
  10. 美国AI语音大牛转投小米!因政治正确遭名校JHU开除,其后怒拒FB百万美元合同...