觀察者模式和發(fā)布訂閱模式主要區(qū)別在于:中間代理。
觀察者模式:觀察者(Observer),被觀察者(Subject)。
在觀察者模式中,被觀察對(duì)象和觀察者之間存在直接關(guān)聯(lián)。觀察者需要直接注冊(cè)(訂閱)到主題上,在主題狀態(tài)改變時(shí)接收通知。因此觀察者與主題之間的耦合度較高。
一個(gè)被觀察對(duì)象可以通知多個(gè)觀察者,但每個(gè)觀察者只關(guān)注一個(gè)被觀察對(duì)象。是一對(duì)一或多對(duì)一通信。
發(fā)布-訂閱模式:訂閱者(Subscriber,類似于觀察者),發(fā)布者(Publisher,類似于被觀察者),消息代理(Broker)。
發(fā)布-訂閱模式在觀察者模式上引入一個(gè)中間媒介(通常稱為消息代理或事件總線)來(lái)解耦發(fā)布者和訂閱者。發(fā)布者和訂閱者之間沒(méi)有任何直接聯(lián)系,通過(guò)消息代理進(jìn)行通信。
發(fā)布者發(fā)布消息到特定的主題或頻道。消息代理負(fù)責(zé)管理和分發(fā)消息,維護(hù)主題列表和訂閱者列表。訂閱者訂閱感興趣的主題或頻道,并在有新消息時(shí)接收通知。
一個(gè)發(fā)布者可以向多個(gè)訂閱者發(fā)送消息,是一對(duì)多通信。訂閱者可以在運(yùn)行時(shí)動(dòng)態(tài)地訂閱或取消訂閱某個(gè)主題。每個(gè)訂閱者都可以獨(dú)立處理消息,互不影響。
今天的分享就到這里啦,EBYTE每一天都致力于更好的助力物聯(lián)化、智能化、自動(dòng)化的發(fā)展,提升資源利用率,更多產(chǎn)品更多資料,感興趣的小伙伴可以登錄我們的億佰特官網(wǎng)和企業(yè)公眾號(hào)(微信號(hào):cdebyte)進(jìn)行了解,也可以直接撥打400電話咨詢技術(shù)專員!
相關(guān)閱讀:
1、【教程】PLC利用函數(shù)塊連接MQTT訂閱消息(一)
2、【教程】PLC利用函數(shù)塊連接MQTT訂閱消息(二)
3、串口服務(wù)器快速接入MQTT3.1協(xié)議服務(wù)器鏈接配置教程
7 X 24 銷售服務(wù)熱線
4000-330-990深圳辦事處柯經(jīng)理:18218726658 南京辦事處葛經(jīng)理:17626012283
無(wú)錫辦事處劉經(jīng)理:13558641933
成都總部銷售經(jīng)理:
秦 科(無(wú)線模塊):18884314654 馮子恒(無(wú)線模塊):18828049434
蔡友銀(無(wú)線模塊):13882211021 葛宇龍(通信設(shè)備):19138800613
胡兵(外貿(mào)銷售經(jīng)理):18584911141、 sales06@ebyte.com
業(yè)務(wù)郵箱:support@cdebyte.com 全國(guó)銷售投訴電話:19934352316
地址:四川省成都市高新西區(qū)西區(qū)大道199號(hào)B5棟(前臺(tái)座機(jī):028-61543675)
?? 成都億佰特電子科技有限公司【版權(quán)所有】 蜀ICP備13019384號(hào)