回答

3

不是。從某種意義上說,至少不是相同的,然而兩者都與消息的交換有關。

Firebase Cloud Messaging (FCM)通常是一個消息服務(如果不是總是)用於Push Notifications

推送通知是「推送」從後端服務器或應用程序的用戶界面,例如一個消息(但不限於)移動應用程序和桌面應用程序。這是更多的用戶體驗不同於Push technology,它推動組件之間的請求,如服務器到服務器通信。推送通知的一種常見情況是客戶端應用程序在應用程序的用戶信息前彈出一條消息以及警報聲音。在某些情況下,通知還可能與圖像和超文本鏈接相結合。通過與推送通知進行交互,它通常會將客戶端應用程序帶到前臺。

該服務可被描述爲一個中間件處理該應用程序服務器(通常是發送者)和客戶端(接收器)之間的消息的發送/遞送。但是爲了讓他們相應地進行通信,發送者和接收者都必須配置爲自己接收消息(即它們是必須適應消息的消息)。

雖然Message Broker被描述爲:

computer programming,一個消息代理是中介program module從發送者的正式消息傳送協議向接收器的正式消息傳送協議轉換的消息。消息代理是電信或計算機網絡中的元素,軟件應用程序通過交換正式定義的消息進行通信。消息代理是​​3210的構建塊。

從描述本身,消息中間件也可以被視爲一個中間件,但它的任務更多的是對轉化/翻譯/調整消息,以便從接收器發送的消息,將順利由接收器接收的

還有從維基百科頁面的Message Broker軟件的可用列表,包含:

  • 的Apache ActiveMQ的
  • 阿帕奇卡夫卡
  • Apache的Qpid
  • 芹菜
  • 立交橋( E-Novation生命線)
  • Comverse Message Broker(Comverse Te chnology)
  • 耐力賽/ X事務消息隊列(TMQ)
  • 金融融合消息代理(的Sybase)
  • 保險絲消息代理(企業的ActiveMQ)
  • 的Gearman
  • HornetQ的(紅帽)
  • IBM集成總線
  • IBM消息隊列
  • 的JBoss Messaging(JBoss的)
  • JORAM
  • 微軟Azure服務總線(微軟)
  • 微軟的BizTalk Server(微軟)
  • NATS(MIT開源許可,寫在圍棋)
  • 開放式消息隊列
  • Oracle消息代理公司(Oracle Corporation)
  • QDB(Apache許可證2.0,支持時間戳消息重放)
  • 的RabbitMQ(Mozilla公共許可,Erlang編寫)
  • Redis的一個開源的,存儲器內數據STR ucture store,用作數據庫,緩存和消息代理。
  • SAP PI(SAP AG)
  • Solace系統消息路由器
  • 傳播工具包
  • Tarantool,一個NoSQL的數據庫,與一組用於消息存儲過程隊列
  • WSO2消息代理
+0

很好的答案。 Firebase雲消息無法實現任何Message Broker特定功能嗎? –

+0

謝謝亞歷山德魯。與消息代理相比,FCM服務*完全不同*。根據你需要*變換*的信息,你的實現可能是巨大的,我不明白FCM如何被使用。 –

+0

FCM似乎無法像傳遞消息隊列一樣向N個訂閱者中的一個訂閱者發送。向消費者羣體中的消費者的動態負載平衡使用到一組消費者中的一個消費者的動態負載平衡。 –