從ActiveMQ項目的網站上:
“ ActiveMQ是JMS 1.1的開源實現,是J2EE 1.4規范的一部分。”
這是我的看法:ActiveMQ是一種開源消息傳遞軟件,可以用作基于消息傳遞的分布式應用程序體系結構的骨干。 ActiveMQ的創建者被迫創建此開源項目有兩個主要原因:
- 當時可用的現有解決方案是專有的/非常昂貴
- Apache Software Foundation的開發人員正在開發完全兼容J2EE的應用服務器(Geronimo),他們需要一個JMS解決方案,該解決方案的許可證應與Apache的許可證兼容。
自成立以來,ActiveMQ已成為商業替代產品(例如WebSphereMQ,EMS / TIBCO和SonicMQ)的強大競爭對手,并已部署在從金融服務到零售等行業的一些頂級公司的生產中。
使用消息傳遞作為集成或通信樣式會帶來許多好處,例如:
- 允許使用不同語言和不同操作系統構建的應用程序相互集成
- 位置透明–客戶端應用程序無需知道服務應用程序的位置
- 可靠的通信–消息的生產者/消費者不必同時使用,或者消息路徑上的某些網段可以下降并返回,而不會影響到達服務/消費者的消息
- 伸縮-可以通過添加更多服務來水平伸縮(如果有太多郵件到達,則可以處理郵件)
- 異步通信–客戶端可以觸發消息并繼續其他處理,而不會阻塞直到服務發送響應為止; 它只有在消息準備好后才能處理響應消息
- 減少耦合–由于前5個優點,大大減少了客戶和服務的假設。 服務可以更改其自身的詳細信息,包括其位置,協議和可用性,而不會影響或破壞客戶端。
請參閱Gregor Hohpe對消息傳遞的描述,或他和Bobby Woolf撰寫的有關基于消息傳遞的企業應用程序集成的書。
它還具有其他優點(希望有人可以在注釋中添加其他優點或缺點),ActiveMQ是免費的開源軟件,可以促進這些優點的產生,并且在生產環境中被證明具有高度的可靠性和可擴展性。
參考: 什么是ActiveMQ? 來自我們的JCG合作伙伴 Christian Posta,網址為Christian Posta Software博客。
翻譯自: https://www.javacodegeeks.com/2012/04/what-is-activemq.html