首页 > 其他分享 >145.观察者模式和发布订阅模式有什么不同

145.观察者模式和发布订阅模式有什么不同

时间:2023-07-14 23:25:35浏览次数:52  
标签:订阅 145 观察者 模式 发布 发布者

145. 观察者模式和发布订阅模式有什么不同?

发布订阅模式其实属于广义上的观察者模式

在观察者模式中,观察者需要直接订阅目标事件。在目标发出内容改变的事件后,直接接收事件并作出响应。

而在发布订阅模式中,发布者和订阅者之间多了一个调度中心。调度中心一方面从发布者接收事件,另一方面向订阅者发布事件,订阅者需要在调度中心中订阅事件。通过调度中心实现了发布者和订阅者关系的解耦。使用发布订阅者模式更利于我们代码的可维护性。

详细资料可以参考:
《观察者模式和发布订阅模式有什么不同?》

标签:订阅,145,观察者,模式,发布,发布者
From: https://www.cnblogs.com/zhuoss/p/17555320.html

相关文章

  • c语言中的大端模式和小端模式
    在学习共用体(联合体union)的时候,碰到了非常经典的大小端模式问题,以下是个人的见解:大端模式与小端模式所有运算的操作数,必须在CPU的內部寄存器才能参与运算对于CPU来说,寄存器才是它真正的储存空间,但是CPU的寄存器的个数以及容量是非常有限的,所以在设计CPU时,必须要有一个它的存储......
  • kubernetes网络模式
     一个K8s的集群中至少有三个网络:集群节点所在的网络,这个网络就是你的主机所在的网络,通常情况下是你的网络基础设施提供。如果你的node处于不同的网段,那么你需要保证路由可达。如上图中的192.168.10.0/24和10.0.0.0/8这两个网络第二个网络是Pod的网络,K8s中一个Pod由多个......
  • KingbaseES V8R6集群运维案例之---single-pro模式备份
    案例说明:KingbaseESV8R6集群物理备份配置参数_target_db_style,可选single或cluster或single-pro。single对应单机模式的目标数据库实例,cluster对应集群模式的目标数据库实例,single-pro对应集群模式的每个DB节点独立备份。本案例详细描述集群架构在singl-pro模式下的备份。适用......
  • mongodb4.4.22主从(副本集附仲裁节点)部署带认证模式
    环境:OS:CentOS7DB:4.4.22机器角色:192.168.1.102:29001主192.168.1.104:29001从192.168.1.105:29001仲裁节点 1.下载相应的版本https://www.mongodb.com/download-center/community我这里下载的是mongodb-linux-x86_64-rhel70-4.4.22.tgz 2.创建安装目录192.168.1.102......
  • JAVA设计模式之责任链模式
    设计模式设计模式(DesignPattern)是前辈们对代码开发经验的总结,是解决特定问题的一系列套路。它不是语法规定,而是一套用来提高代码可复用性、可维护性、可读性、稳健性以及安全性的解决方案。总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、......
  • Q:如何实现notepad++列编辑模式
    列编辑:txt编辑器大家都非常熟悉,当需要修改多行的时候只能一行一行的修改。而notepad可以同时修改多行的数据。1、鼠标移动光标到要选择的列 2、按住 alt 键,从上到下选择多列,光标会变成列模式 3、输入要插入或者修改的数据。同理按delete也可以实现按列删除 ......
  • 关于 flannel、calico、cililum 工作模式的说明
    https://docs.projectcalico.org/networking/determine-best-networkinghttps://kubernetes.io/docs/concepts/cluster-administration/networking/#the-kubernetes-network-modelflannel、calico、cililumEncapsulation#封装是指在附加层中加入网络数据包以提供其他上下文......
  • java设计模式实现结论
    Java设计模式实现结论场景描述在软件开发过程中,我们经常会遇到一些常见的问题和需求。为了提高代码的复用性、可维护性和可扩展性,使用设计模式是一个非常好的选择。设计模式是一种被反复验证的、经过优化的解决方案,可以解决特定问题的代码设计问题。流程概述为了实现设计模式,我......
  • 设计模式-桥接模式在Java中的使用示例
    场景桥接模式情境引入假如我们需要大中小3种型号的画笔,能够绘制12种不同的颜色,如果使用蜡笔,需要准备3×12=36支,但如果使用毛笔的话,只需要提供3种型号的毛笔,外加12个颜料盒即可,涉及到的对象个数仅为3+12=15,远小于36,却能实现与36支蜡笔同样的功能。如果增加一种新型号的画......
  • 设计模式模板-抽象工厂
    1#ifndefTEMPLATE_ABSTRACT_FACTORY_H2#defineTEMPLATE_ABSTRACT_FACTORY_H34#include<algorithm>5#include<list>6#include<mutex>78template<typenameAbstract,typename...Args>9classTemplateAbstractFactory......