配置中心比较Apollo与Nacos-CSDN博客

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

1、Nacos

  • Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集帮助您实现动态服务发现、服务配置管理、服务及流量管理。

  • Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构(例如微服务范式、云原生范式)的服务基础设施。

Nacos 支持基于 DNS 和基于 RPC 的服务发现。在Spring Cloud中使用Nacos只需要先下载 Nacos 并启动 Nacos serverNacos只需要简单的配置就可以完成服务的注册发现。

Nacos除了服务的注册发现之外还支持动态配置服务。动态配置服务可以让您以中心化、外部化和动态化的方式管理所有环境的应用配置和服务配置。动态配置消除了配置变更时重新部署应用和服务的需要让配置管理变得更加高效和敏捷。配置中心化管理让实现无状态服务变得更简单让服务按需弹性扩展变得更容易。

1.1 Nacos主要提供以下四大功能

  1. 服务发现与服务健康检查
    Nacos使服务更容易注册自己并通过DNS或HTTP接口发现其他服务。Nacos还提供服务的实时健康检查以防止向不健康的主机或服务实例发送请求。

  1. 动态配置管理
    动态配置服务允许您在所有环境中以集中和动态的方式管理所有服务的配置。Nacos消除了在更新配置时重新部署应用程序和服务的需要这使配置更改更加高效和灵活。

  1. 动态DNS服务
    Nacos支持加权路由使您可以更轻松地在数据中心的生产环境中实施中间层负载平衡灵活的路由策略流量控制和简单的DNS解析服务。它可以帮助您轻松实现基于DNS的服务发现并防止应用程序耦合到特定于供应商的服务发现API。

  1. 服务和元数据管理
    Nacos提供易于使用的服务仪表板可帮助您管理服务元数据配置kubernetes DNS服务运行状况和指标统计。

Apollo

Apollo 携程开源的配置管理中心具备规范的权限、流程治理等特性。能够集中化管理应用不同环境、不同集群的配置配置修改后能够实时推送到应用端并且具备规范的权限、流程治理等特性适用于微服务配置管理场景。

  • Apollo有 单独的管理界面并且不用整合gitee/gitlab配置简单。

  • 用户在Apollo修改完配置并发布后客户端能实时1秒接收到最新的配置并通知到应用程序。

  • 支持配置的灰度发布比如点了发布后只对部分应用实例生效等观察一段时间没问题后再推给所有应用实例。

  • Apollo自身提供了比较完善的统一配置管理界面支持多环境、多数据中心配置管理、权限、流程治理等特性。

  • 配置中心作为基础服务可用性要求非常高这就要求Apollo对外部依赖尽可能地少目前唯一的外部依赖是MySQL所以部署非常简单只要安装好Java和MySQL就可以让Apollo跑起来Apollo还提供了打包脚本一键就可以生成所有需要的安装包并且支持自定义运行时参数。

4.2 Apollo 与 Nacos 功能对比

  • nacos配置文件支持比较多的格式支持yaml、text、json、xml、html、Propertiesapollo只支持xml、text、Properties的格式没有兼容springboot中比较通用的yaml配置。

  • apollo用户管理以及权限管理做的比较好和全面适合做部门或者公司级的配置中心。nacos比较简洁明了也可以说没有做权限这一块的开发适合做小组内或者小型java团体使用。

  • apollo区分多环境是直接通过环境指定可以直接对比和切换而nacos是通过命名空间进行区分的。

  • nacos是支持多格式的配置文件但是解析上没有apollo做的好apollo虽然支持的配置格式较少不过会进行解析使每个配置看起来比较直观修改的时候比较直观可以对单个进行修改。

图标对比

4.2.1 Nacos与Apollo对比结论

  1. Nacos部署简化Nacos整合了注册中心、配置中心功能且部署相比apollo简单方便管理和监控。

  1. apollo容器化较困难Nacos有官网的镜像可以直接部署总体来说Nacos比apollo更符合KISS原则

  1. 性能方面Nacos读写tps比apollo稍强一些

4.2.2 阿里的nacos : 性能最好

  1. 他同时支持AP和CP模式,他根据服务注册选择临时和永久来决定走AP模式还是CP模式,

  1. 他这里支持CP模式对于我的理解来说,应该是为了配置中心集群,因为nacos可以同时作为注册中心和配置中心,

  1. 因为他的配置中心信息是保存在nacos里面的,假如因为nacos其中一台挂掉后,还没有同步配置信息,就可能发生配置不一致的情况.,

  1. 配置中心的配置变更是服务端有监听器,配置中心发生配置变化,然后服务端会监听到配置发生变化,从而做出改变

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6