知识卡片

发布订阅模型是观察者模式经消息队列解耦的升级版

普通读书笔记卡 · 1872.b.6

内容

[[观察者模式的定义与四个角色]]也叫发布/订阅模式,EJB的Message-Driven Bean是规模化 实现:发布者把消息发给容器管理的消息队列,容器再通知所有订阅者,双方不再直接调用而是 都只和队列打交道。这是观察者模式的升级版——用消息队列这个独立中介彻底解耦发布者和订阅者, 可运行在不同进程。发散:观察者模式的核心思想可以脱离”同一进程内对象引用”这个实现细节, 延伸到分布式消息系统。

参考来源

- 位置:《设计模式之禅(第2版)》第22章《观察者模式》(源文件:_epub-src/text/part0102.html) - 结论依据:原文说明"观察者模式也叫做发布/订阅模型……消息的发布者(Provider)发布一个消息,也就是一个消息驱动Bean,通过EJB容器(一般是Message Queue消息队列)通知订阅者做出回应,从原理上看很简单,就是观察者模式的升级版,或者说是观察者模式的BOSS版"。 - 原始内容:观察者模式也叫做发布/订阅模型(Publish/Subscribe)……消息的发布者(Provider)发布一个消息,也就是一个消息驱动Bean,通过EJB容器(一般是Message Queue消息队列)通知订阅者做出回应,从原理上看很简单,就是观察者模式的升级版。