三、發(fā)布訂閱

上一節(jié)的練習(xí)中我們創(chuàng)建了一個(gè)工作隊(duì)列。隊(duì)列中的每條消息都會被發(fā)送至一個(gè)工作進(jìn)程。這節(jié),我們將做些完全不同的事情——我們將發(fā)送單個(gè)消息發(fā)送至多個(gè)消費(fèi)者。這種模式就是廣為人知的“發(fā)布訂閱”模式。

為了說明這種模式,我們將構(gòu)建一個(gè)簡單的日志系統(tǒng)。包括2個(gè)應(yīng)用程序,一個(gè)傳送日志消息另一個(gè)接收并打印這些消息。

我們的日志系統(tǒng)中每一個(gè)運(yùn)作的接收端程序都會收到這些消息。這種方式下,我們就可以運(yùn)行一個(gè)接收端發(fā)送日志消息至硬盤,同時(shí)可以運(yùn)行另一個(gè)接收端將日志打印到屏幕上。

理論上講,已發(fā)布的日志消息將會被廣播到所有的接收者。

交換器(Exchange

之前的幾節(jié)練習(xí)中我們發(fā)送接收消息都是在隊(duì)列中進(jìn)行,是時(shí)候介紹下RabbitMQ完整的消息傳遞模式了。

先來迅速的回顧下我們之前章節(jié):

  • 一個(gè)生產(chǎn)者就是一個(gè)用來發(fā)送消息的應(yīng)用程序

  • 一個(gè) 隊(duì)列好比存儲消息的緩存buffer

  • 一個(gè)消費(fèi)者就是一個(gè)用戶應(yīng)用程序用來接收消息

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式