首页
学习
活动
专区
圈层
工具
发布

【面试系列】二层破环协议该如何描述?带答案

端口 MAC地址表 交换机不向边缘端口转发 TC 报文 EP端口收到 BPDU 变为普通端口 问题:收到 TC不删除 MAC地址表,是指边缘端口收到吗?...RSTP中其他设备收到TC怎么处理的?MAC表需不需要删?是全部清空吗?...端口 down 会判定拓扑发生变化吗?为什么?收到 TC端口角色会发生变化吗?...当由于链路拥塞或者单向链路故障导致这些端口收不到来自上游交换设备的 BPDU时,交换设备会重新选择根端口。...在启动了环路保护功能后,如果根端口或 Alternate端口长时间收不到来自上游设备的 BPDU报文时,则向网管发出通知信息(此时根端口会进入 Discarding状态,角色切换为指定端口),而 Alternate

1.5K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【Kafka专栏 08】ZooKeeper的Watch机制:不就是个“小喇叭”吗?

    Watch机制允许ZooKeeper客户端在某个ZNode(ZooKeeper中的数据节点)上注册一个监听器,当这个ZNode发生变化(如数据变更、子节点增减、节点删除等)时,ZooKeeper服务端会主动通知所有注册了该...这种感知是实时的,因为一旦状态发生变化,服务端会立即发送通知给所有相关的客户端。 2.1.2 触发相应的处理措施 当客户端收到状态变化的通知后,它可以触发相应的处理措施。...2.2 触发回调处理 当ZNode的状态发生变化时,ZooKeeper服务端会主动向注册了该ZNode的Watch的客户端发送通知。客户端在接收到通知后,可以触发相应的回调处理函数,执行相应的操作。...这不仅会增加客户端的处理负担,还可能导致网络拥堵和服务端性能下降。通过使Watch一次性触发,ZooKeeper能够确保客户端只会在ZNode状态发生变化时收到一次通知,从而避免了通知泛滥的问题。...这个Watch可以理解为一个监听器,当ZNode的数据发生变化时,ZooKeeper服务端会异步地向所有注册了该Watch的客户端发送一个通知。

    40210

    面试:Zookeeper常见11个连环炮

    (2)当接收到来自其他服务器的投票时,都需要将别人的投票和自己的投票进行pk,规则如下: 优先检查zxid。zxid比较大的服务器优先作为leader。...简单地说:client端会对某个znode 注册一个watcher事件,当该znode发生变化时,这些client会收到ZooKeeper的通知,然后client可以根据znode变化来做出业务上的改变等...),随后zookeeper服务端会异步向所有消费用户注册服务com.xxx.user.register,且设置了watch监听的服务消费者发出节点被删除的通知,消费者根据收到的通知拉取最新服务列表,更新本地缓存的服务列表...否则客户端只能接收到一次该节点的变更通知。 NO9:那你说说Zookeeper有哪些应用场景?...配置管理 程序分布式的部署在不同的机器上,将程序的配置信息放在ZooKeeper的znode下,当有配置发生改变时,也就是znode发生变化时,可以通过改变zk中某个目录节点的内容,利用watch通知给各个客户端

    69010

    观察者模式(浅谈监听器工作原理)

    当处于观察者状态时,被观察的对象会向我们发出某种信息,使我们产生某种心理活动或行为状态的改变。当我们处于被观察者状态时,我们的行为活动又可以以信息的方式影响观察者。...这个主题对象在状态上发生变化时,会通知所有观察者对象,让他们能够自动更新自己 。...; } } 程序运行结果 已经收到通知:你好! 已经收到通知:你好! 已经收到通知:你好!...-------------------------------- 已经收到通知:很好! 已经收到通知:很好! 原理图: ?...,观察者已收到通知:" + arg); } } 浅析监听器的工作原理 刚开始接触监听器的时候,很是不理解为什么我点击按钮(触发事件)监听器会自动运行,而且每当我应用监听器处理事件的时候,就会困惑不已

    1.4K40

    Kafka Controller

    这样当Topic分区发生变化时,controller能够及时收到通知。 ?...controller也会注册该节点的目录监听器。一旦接收到改变通知,controller会将对应分区的leader调整回副本列表中的第一个,并且广播出去。...由于在创建Topic以后,会注册一个监听该目录变化监听器,因此当目录发生变化时,controller会收到通知,执行分区创建任务,之后更新集群元数据信息。...controller会在/brokers/ids创建一个监听该节点的子节点是否发生变化的监听器,一旦收到通知,然后就会更新集群元数据信息。...broker崩溃 broker在加入集群时注册的节点是个临时节点,伴随broker的崩溃,临时节点消失,然后controller会收到通知,开启关闭broker逻辑,并更新集群元数据信息。

    1.2K10

    深入理解观察者模式(Observer Pattern)

    当主题状态发生改变时,观察者会被通知并进行相应的更新。 为什么使用观察者模式? 在现实生活中,我们经常会遇到这样的情况:当一个对象的状态发生改变时,其他对象也需要做出相应的变化。...观察者(Observer): 观察者是订阅主题状态变化的对象,当主题状态发生改变时,观察者会接收到通知并执行相应的更新操作。...当用户与 GUI 组件进行交互时,观察者会接收到通知并执行相应的操作,从而实现 GUI 的实时更新和交互。 2....当股票价格发生变化时,观察者会收到通知并做出相应的交易决策。 3. 车辆追踪系统 在车辆追踪系统中,车辆的位置和状态需要实时监测,并及时通知相关的监控中心或用户。...当车辆的位置或状态发生变化时,观察者会收到通知并进行相应的处理。 4. 观察者模式与事件驱动编程 观察者模式与事件驱动编程密切相关。在事件驱动编程中,事件是主题,而事件处理程序则是观察者。

    36910

    面试准备季——ZooKeeper 面试专题

    当与一个服务器失去连接的时候,是无法接收到 watch 的。而当 client 重新连接时,如果需要的话,所有先前注册过的 watch,都会被重新注册。通常这是完全透明的。...Zookeeper 自身也要保证当一个节点宕机时,其他节点会继续提供服务。...Zookeeper对节点的watch监听通知是永久的吗?为什么不是永久的? 不是。...zk 的配置管理(文件系统、通知机制) 程序分布式的部署在不同的机器上,将程序的配置信息放在 zk 的 znode 下,当有配置发生改变时,也就是 znode 发生变化时,可以通过改变 zk 中某个目录节点的内容...Zookeeper 队列管理(文件系统、通知机制) 两种类型的队列: 1、同步队列,当一个队列的成员都聚齐时,这个队列才可用,否则一直等待所有成员到达。

    60420

    【愚公系列】2024年02月 大数据教学课程 018-Hadoop辅助软件安装

    当主节点发生故障时,备份节点会自动选举出一个新的主节点,确保系统的可用性和数据的一致性。...当一个节点的数据发生变化时,订阅该节点的客户端将收到通知并可以获取最新的数据。以下是一个简单的例子: 假设有一个名为/config的Zookeeper节点,存储了某个应用程序的配置信息。...zkClient.getData("/config", true, dataCallback, null); 当/config节点的数据发生变化时,所有订阅该节点的应用程序实例都会收到通知。...config节点的数据发生变化时,所有订阅该节点的应用程序实例都会收到通知,并可以获取最新的数据进行相应的处理。...当A执行完后,会删除自己创建的节点,此时节点node-0000000002会被删除,客户端B会收到节点删除的通知,然后再次检查自己创建的节点是否是最小的节点,如果是则获取到锁,可以执行临界区代码。

    26510

    2025新鲜出炉--前端面试题(三)

    依赖收集:当读取数据时,Dep 订阅中心会记录所有依赖于该数据的 Watcher。 触发更新:当数据发生变化时,通知 Dep 订阅中心,然后 Dep 通知所有 Watcher 进行更新。...当数据被读取时,会触发 getter 函数,此时 Dep 实例会记录当前的 Watcher。...当数据被修改时,会触发 setter 函数,此时 Dep 实例会通知所有订阅了该数据的 Watcher。 Watcher 在接收到通知后,会执行其回调函数,从而触发视图更新。...hash 模式背后的原理是onhashchange事件,当 URL 的片段标识符(即 hash 部分)发生变化时,会触发该事件。...当创建一个函数时,该函数的 prototype 属性会自动获得一个 constructor 属性,指向函数自身。 通过原型,可以实现属性和方法的继承。

    1.5K21

    C++设计模式——Observer观察者模式

    一,观察者模式的定义 观察者模式是一种行为型设计模式,又被称为"发布-订阅"模式,它定义了对象之间的一对多的依赖关系,当一个对象的状态发生变化时,所有依赖于它的对象都会收到通知并自动更新。...观察者模式在现实生活中的抽象实例: 报纸订阅:报纸的内容发生变化时,订阅了该报纸的读者们都会收到通知并阅读最新的内容。 股票投资:股票的价格发生波动时,投资者们会根据最新价格修改相应的投资决策。...天气预报:当天气发生变化时,订阅了该服务的用户们会收到通知。 网络论坛:当论坛中有新的帖子或回复出现时,论坛的用户们会收到通知并可以参与讨论。...监控服务开发:当系统状态发生变化时(例如磁盘空间不足),工具会收到通知。 消息队列开发:基于"消费者-生产者"模式进行通信,当消息队列中有新的消息时,消费者会收到通知。...每次状态变化都要通知所有的观察者,通信时间变长。 观察者数量过多会使代码的可读性变差。 当有多个客户端操作观察者的删除时,会带来数据安全问题。

    1.2K10

    CRUD很无聊?一起学设计模式吧!— 观察者模式

    具体主题(ConcreteSubject):将有关状态存入具体观察者对象;在具体主题的内部状态改变时,给所有登记过的观察者发出通知。...场景实战 平时我们都喜欢关注一些微信公众号看一些大佬吹牛皮,当公众号发布消息后,作为粉丝的我们就可以收到消息。...(Observer observer : observers) { observer.recive(message); } } /** * 当主题发生变化时通知观察者...observer.recive(this); } } /** * 当主题发生变化时通知观察者 * @param message...如果你的应用场景中不需要考虑如上情形,那么Observable可能会符合你的需求,否则还是需要使用自定义观察者模式来实现你的需求,反正这也很简单,不是吗?

    81950

    在王者荣耀角度下分析面向对象程序设计B中23种设计模式之观察者模式

    比如,当游戏开局时,系统会提示“敌军还有5秒到达战场,请做好准备”;当有英雄被击杀时或者敌我双方防御塔被摧毁时,我方队友和敌方收到的系统提示是不同的。...于是,此类问题就可以用观察者模式很好的实现当防御塔被摧毁后敌我双方英雄分别收到不同的消息的结果。...这里再简单描述一下这个具体问题:当敌方高低防御塔被我方娜可露露摧毁时,我方全部队友收到系统提示消息“(娜可露露)摧毁敌方防御塔”,而敌方英雄收到的则是“(娜可露露)摧毁我方防御塔”。...观察者模式是行为模式之一,它的作用是当一个对象的状态发生变化时,能够自动通知其他关联对象,自动刷新对象状态。...需要创建具体主题和该主题的观察者 当系统消息提示“敌方防御塔被摧毁”时,我方和敌方分别得到内容不同的通知 */ public class Application { public static void

    64720

    在王者荣耀角度下分析面向对象程序设计B中23种设计模式之观察者模式

    比如,当游戏开局时,系统会提示“敌军还有5秒到达战场,请做好准备”;当有英雄被击杀时或者敌我双方防御塔被摧毁时,我方队友和敌方收到的系统提示是不同的。...于是,此类问题就可以用观察者模式很好的实现当防御塔被摧毁后敌我双方英雄分别收到不同的消息的结果。...这里再简单描述一下这个具体问题:当敌方高低防御塔被我方娜可露露摧毁时,我方全部队友收到系统提示消息“(娜可露露)摧毁敌方防御塔”,而敌方英雄收到的则是“(娜可露露)摧毁我方防御塔”。...观察者模式是行为模式之一,它的作用是当一个对象的状态发生变化时,能够自动通知其他关联对象,自动刷新对象状态。...需要创建具体主题和该主题的观察者 当系统消息提示“敌方防御塔被摧毁”时,我方和敌方分别得到内容不同的通知 */ public class Application { public static void

    50600

    大数据面试题(六):ZooKeeper核心高频面试题

    同一个zk客户端对某一个节点注册相同的watch,只会收到一次通知。Watcher对象只会保存在客户端,不会传递到服务端。七、能否收到每次节点变化的通知? 如果节点数据的更新频率很高的话,不能。...原因在于:当一次数据修改,通知客户端,客户端再次注册watch,在这个过程中,可能数据已经发生了许多次数据修改,因此,千万不要做这样的测试:“数据被修改了n次,一定会收到n次通知”来测试server是否正常工作...监视点是一个单次触发的操作,意即监视点会触发一个通知。为了接收多个通知,客户端必须在每次通知后设置一个新的监视点。...在下图阐述的情况下,当节点/task发生变化时,客户端会受到一个通知,并从ZooKeeper读取一个新值。十五、ZooKeeper的监听原理是什么?...,一旦目标文件发生变化,ZooKeeper就会把这条消息发送给对应的zkClient的Listener() 进程,Listener进程接收到后,就会执行process()方法,在process()方法中针对发生的事件进行处理

    86361

    深入解析Nacos配置中心的动态配置更新技术

    一旦配置在Nacos Server端发生变化,监听器会立刻得到通知。...实时配置更新:当Nacos Client收到配置变更的通知后,它会迅速从Nacos Server获取最新的配置信息,并实时更新应用程序中的配置。...监听器注册:同时,服务会为其关心的配置注册一个监听器,确保当配置发生变化时能够得到通知。...查找并通知监听器:服务端会查找所有注册了对应配置监听器的客户端,并通过之前建立的长连接发送更新通知。 客户端拉取并应用新配置:客户端在收到通知后,会从服务端拉取最新的配置,并应用到服务中。...缓存更新与一致性:当收到配置更新通知时,客户端不仅会更新其本地缓存,还会进行必要的同步和验证,以确保缓存的一致性。

    3.4K10

    LiveData的用法

    我们在示例代码中定义了接口,当数据发生变化的时候,采用接口的方式实现对页面的通知。...LiveData是一个可被观察的数据容器类,具体来说,可以将LiveData理解为一个数据的容器,它将数据包装起来,使数据成为被观察者,当数据发生变化的时候,观察者能够获得通知。...从源码中可以发现,当页面的状态为Destroy时,直接return了,否则将observer添加为页面的观察者。...也就是说,只有页面处于激活状态时,页面才可以收到来自LiveData的通知,若页面处于destroy状态,那么LiveData会自动清除与页面的关联,从而避免可能引起的内存泄漏问题。...中的数据发生变化时,无论页面处于什么状态,observeForever()方法都可以收到通知。

    92420

    Zookeeper:事件监听和通知机制

    Zookeeper 允许客户端向服务端的某个 Znode 注册一个 Watcher 监听,当服务端的一些指定事件触发了这个 Watcher,服务端会向指定客户端发送一个事件通知来实现分布式的通知功能,...、服务器处理 Watcher 3、客户端回调 Watcher ---- 一、关于观察者模式 1、观察者模式 观察者模式定义了对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知...观察者模式有一个别名叫“发布-订阅模式”,或者说是“订阅-发布模式”,订阅者和订阅目标是联系在一起的,当订阅目标发生改变时,逐个通知订阅者。...2、Watcher 特性 当数据发生变化的时候, zookeeper 会产生一个 watcher 事件,并且会发送到客户端。但是客户端只会收到一次通知。...session 彻底失效时才会无效,若在 session 有效期内快速重连成功,则 watcher 依然存在,仍可接收到通知。

    1.8K30

    Android Jetpack架构组件(四)之LiveData

    LiveData是一个持有数据的容器类,它持有的数据是可以被观察者订阅的,当数据发生变化时会通知观察者,观察者可以是 Activity、Fragment、Service 等对象。...使用 LiveData 保存数据时,由于数据和组件是分离的,所以当组件被销毁时可以保证数据不会丢失。...因此,我们认为LiveData就是一个数据容器,它负责将数据包裹起来,使数据成为被观察者,当数据发生变化时,LiveData会通知观察者以便观察者做出响应。...当配置发生更改(如屏幕旋转)而重建 Activity / Fragment,它会立即收到最新的可用数据。 资源共享。...这样Observer对象就与LiveData产生了订阅关系,当LiveData数据发生变化时通知,而在Observer更新数据,所以Observer通常是Activity和Fragment。

    4.2K00

    安装配置ZooKeeper及基本用法

    赋值命令执行后,控制台收到了一条通知事件:/hello值已经被修改。重新查看这个值,发现它的版本(dataVersion)已经从0变为1。 再执行删除命令,删掉这个节点 ?...列表server.X构成了整个ZooKeeper服务,当服务启动的时候,会读取data/myid文件,获取自己的编号。 在server后面有两个端口号:"2888"和"3888"。...每次一个znode节点的数据发生变化,版本号都会增加。当客户端读取数据时,也会把数据的版本号一并取回去。当客户端尝试修改或删除一个znode时,需要提供尝试修改节点的版本号。...znode数据发生变化时会触发watch,然后清除watch。当watch触发时,ZooKeeper会向客户端发送一个通知。 数据访问:znode上的数据,读写都是原子性的。...例如:使用命令 getData(“/hello”, true)读取数据,当/hello被修改或删除时,客户端都会收到事件。当数据再次发生变化时,客户端就不会收到事件了。

    1.5K10
    领券