• Zookeeper简介


    ZooKeeper 是 Apache 软件基金会的一个软件项目,它为大型分布式计算提供开源的分布式配置服务同步服务命名注册。ZooKeeper 的架构通过冗余服务实现高可用性。

    Zookeeper 的设计目标是将那些复杂且容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集,并以一系列简单易用的接口提供给用户使用。

    一个典型的分布式数据一致性的解决方案,分布式应用程序可以基于它实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等功能。

    zookeeper 数据结构

    zookeeper 提供的名称空间非常类似于标准文件系统,key-value 的形式存储。名称 key 由斜线 / 分割的一系列路径元素,zookeeper 名称空间中的每个节点都是由一个路径标识。

    CAP 理论

    CAP 理论指出对于一个分布式计算系统来说,不可能同时满足以下三点: 

    • 一致性:在分布式环境中,一致性是指数据在多个副本之间是否能够保持一致的特性,等同于所有节点访问同一份最新的数据副本。在一致性的需求下,当一个系统在数据一致的状态下执行更新操作后,应该保证系统的数据仍然处于一致的状态。
    • 可用性:每次请求都能获取到正确的响应,但是不保证获取的数据为最新数据。

    • 分区容错性:分布式系统在遇到任何网络分区故障的时候,仍然需要能够保证对外提供满足一致性和可用性的服务,除非是整个网络环境都发生了故障。

    一个分布式系统最多只能同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance)这三项中的两项。

    在这三个基本需求中,P 是必须的,因此只能在 CP 和 AP 中选择,zookeeper 保证的是 CP,而 spring cloud 系统中的注册中心 Eruka 实现的是 AP。

  • 相关阅读:
    解决下载Android源码时遇到的 download error
    将HTML5封装成android应用APK
    实现静默安装和卸载应用
    java获取当前类的绝对路径
    c# winform程序如何获取命令行带参数启动时的参数
    安装软件时提示:Error 1324. The path My Documents contains a invalid character
    C# Winform 禁止重复运行
    Java获取JSON参数
    Ext JS 4: Override timeouts
    查看oracle数据库的连接数以及用户
  • 原文地址:https://www.cnblogs.com/peteremperor/p/14527715.html
Copyright © 2020-2023  润新知