nacos和apollo实现对比

nacos

架构

  • client -> server <- admin。
  • 服务端持久化可简化为内置的Derby内存数据库。

配置更新

  • HTTP从server长轮询拉配置。请求延时阻塞在服务端队列中。
  • 服务端task扫到key的更新,变更后的配置写入响应对象,返回结果。
  • 没有变更阻塞29.5s后(客户端超时30s)检查配置,检查结果写入响应对象,返回结果。
  • 客户端检查配置的md5,不一致调用listener通知变更事件。

概念

  • nacos配置层级和项目对应关系:

apollo

架构

配置更新

  • 服务端定期扫更新配置
    200915.apollo.server.png
    • releaseMessage实现方式:
      1. admin server写mysql表。
      2. config server的task扫更新记录。
  • 客户端缓冲配置(内存+文件)。
    200915.apollo.client.png
    • 推送实现方式:同nacos http长轮询

对比

apollo nacos
推送方式 HTTP长轮询 HTTP长轮询
客户端存储 内存+文件 内存+文件
最小部署 config+admin+portal+mysql sever+内嵌db或mysql
权限管理 复杂 简单

参考

猜你喜欢

转载自blog.csdn.net/qq_40369829/article/details/108945326