代码之家  ›  专栏  ›  技术社区  ›  user321532

zookeeper和spring云配置服务器有什么区别?

  •  15
  • user321532  · 技术社区  · 10 年前

    zookeeper和spring云配置服务器有什么区别?它们都将配置存储在服务器中,并将其提供给客户端。

    什么时候应该用一种代替另一种?

    1 回复  |  直到 10 年前
        1
  •  27
  •   Ali Dehghani    7 年前

    zookeeper和spring云配置服务器有什么区别?

    使用Spring Cloud Config Server,您可以在中心位置管理所有环境中应用程序的外部属性。config-server上的概念与Spring映射相同 Environment 和 PropertySource 抽象, 所以它们非常适合Spring应用程序 , 但可以与以任何语言运行的任何应用程序一起使用 .

    Zookeeper不仅仅是一个分布式配置服务器,它是一个用于几乎 一系列令人困惑的用例,包括配置管理、同步数据 在服务、领导人选举、消息队列和命名之间 服务

    如果您只想关注配置管理部分,我应该说,它们是同一概念的不同实现。

    使用Spring Cloud Config Server,您有一个由(默认情况下)git存储库支持的配置服务器。每次对git存储库进行新的推送时,配置服务器都会知道新的配置值。配置服务器的客户端可以从服务器中提取新的配置值并重新配置自己,也可以通过连接到云总线来采用事件驱动的方法。

    Zookeeper的核心是为存储信息提供了一个分层的命名空间。客户 可以在此层次结构中插入新节点、更改或查询它们。此外,他们可以 向节点添加监视,以便在节点发生更改时通知它们。

    什么时候应该用一种代替另一种?

    在我看来,Spring Cloud似乎很适合许多云原生应用程序,尤其是如果您已经在使用Spring框架。此外,基于存储库的配置服务器方法对我来说更自然,而且非常灵活,您可以轻松地存储通用的、特定于应用程序的和基于环境的配置值。最后但并非最不重要的是, Spring Cloud Zookeeper 作为春云的一部分提供。