热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

Zookeeper_Zookeeper观察者

本文由编程笔记#小编为大家整理,主要介绍了Zookeeper 观察者相关的知识,希望对你有一定的参考价值。一、概述1.特点:不参与投票也不选举,但是会监听投票结果,然后根据投票结果来执行对应请求场景:
本文由编程笔记#小编为大家整理,主要介绍了Zookeeper 观察者相关的知识,希望对你有一定的参考价值。

一、概述

1.特点:不参与投票也不选举,但是会监听投票结果,然后根据投票结果来执行对应请求

场景:三个机房,杭州,青岛,美国,杭州有7001个 zk 服务节点,青岛有4000个 zk 服务节点,美国有4000 zk 服务节点

问题:选举节点个数过多,网络对选举的效率影响较大

选举A作为leader的,选择B作为leader的,在杭州分别有4000个和3000个,青岛有1800个,2200个,美国2000个,2000个

此时理论上选择A作为leader有4000+1800+2000=7800个,B作为leader的有3000+2200+2000=7200个,即总的节点数有15001个,A作为leader有7800,大于15001的一半,且大于B作为leader的数量,是可以的

但是实际中,在接收青岛或者美国的所有节点的反馈信息,由于网络问题,可能会存在部分节点的信息收到,

如收到青岛反馈:A作为leader有1000,B作为leader有2000;美国反馈:A作为leader有800,B作为leader有1000

那么总的A作为leader有5800,B作为leader有6000,但是B还是不会作为leader,理由是B作为leader有6000个,没有满足节点数量过半的要求,即 6000 <15001/2

针对以上的问题,处理方式,青岛和美国的节点都作观察者,只有杭州的节点拥有选举权

 

技术图片

 

2.观察者适用场景:网络不好或者异地网络结构;集群庞大节点个数比较多,

      一般有70%左右的作为观察者,不进行参与选举,只执行结果

3.观察者的存活与否并不影响整个集群

4.设置观察者:首先在需要修改的节点上,关闭zk的服务,然后修改zoo.cfg,添加 peerType=observer

技术图片

 


推荐阅读
  • HBase运维工具全解析
    本文深入探讨了HBase常用的运维工具,详细介绍了每种工具的功能、使用场景及操作示例。对于HBase的开发人员和运维工程师来说,这些工具是日常管理和故障排查的重要手段。 ... [详细]
  • Kafka Topic 数据管理与清理策略
    本文探讨了在生产环境中如何有效管理和定期清理Kafka Topic中的数据。介绍了基于时间、日志大小和日志起始偏移量三种清除方式,并重点讲解了基于时间的清除策略及其配置方法。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 本文介绍如何解决在 IIS 环境下 PHP 页面无法找到的问题。主要步骤包括配置 Internet 信息服务管理器中的 ISAPI 扩展和 Active Server Pages 设置,确保 PHP 脚本能够正常运行。 ... [详细]
  • 本文详细介绍了如何使用PHP检测AJAX请求,通过分析预定义服务器变量来判断请求是否来自XMLHttpRequest。此方法简单实用,适用于各种Web开发场景。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 本文详细探讨了Java中的24种设计模式及其应用,并介绍了七大面向对象设计原则。通过创建型、结构型和行为型模式的分类,帮助开发者更好地理解和应用这些模式,提升代码质量和可维护性。 ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 深入解析Spring Cloud Ribbon负载均衡机制
    本文详细介绍了Spring Cloud中的Ribbon组件如何实现服务调用的负载均衡。通过分析其工作原理、源码结构及配置方式,帮助读者理解Ribbon在分布式系统中的重要作用。 ... [详细]
  • 使用C#开发SQL Server存储过程的指南
    本文介绍如何利用C#在SQL Server中创建存储过程,涵盖背景、步骤和应用场景,旨在帮助开发者更好地理解和应用这一技术。 ... [详细]
  • 利用存储过程构建年度日历表的详细指南
    本文将介绍如何使用SQL存储过程创建一个完整的年度日历表。通过实例演示,帮助读者掌握存储过程的应用技巧,并提供详细的代码解析和执行步骤。 ... [详细]
  • 在使用SQL Server进行动态SQL查询时,如果遇到LIKE语句无法正确返回预期结果的情况,通常是因为参数传递方式不当。本文将详细探讨这一问题,并提供解决方案及相关的技术背景。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • Hadoop发行版本选择指南:技术解析与应用实践
    本文详细介绍了Hadoop的不同发行版本及其特点,帮助读者根据实际需求选择最合适的Hadoop版本。内容涵盖Apache Hadoop、Cloudera CDH等主流版本的特性及应用场景。 ... [详细]
  • 如何构建基于Dubbo协议的示例项目
    本文详细介绍了构建基于Dubbo协议的示例项目的步骤,包括环境搭建、服务接口定义、服务实现、配置文件设置及客户端调用等环节,旨在为初学者提供一个清晰的学习路径。 ... [详细]
author-avatar
喵喵方小幺
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有