1. 程式人生 > >憑什麼說AMQP比JMS優秀啊?JMS才是真正實現了一個客戶端呼叫多種產品的訊息中介軟體啊

憑什麼說AMQP比JMS優秀啊?JMS才是真正實現了一個客戶端呼叫多種產品的訊息中介軟體啊

一、AMQP 歷史
​ 訊息佇列(Message Queue)起源於一位來自 MIT 的硬體設計教育工作者 Vivek Ranadivé 設想了一種通用軟體匯流排,就像主機板上的匯流排那樣,供其他應用程式接入。Vivek在1983年成立了 Teknekron,高盛等公司作為第一批使用者再金融交易中採用了 Teknekron的軟體,同時還誕生了第一代訊息佇列軟體:Teknekron 的 The Information Bus(TIB)。

​ Teknekron 的 TIB 允許應用開發者建立一系列規則去描述訊息內容,只要訊息按照這些規則釋出出去,任何消費者應用都可以訂閱感興趣的內容,資訊的生產者和消費者完全解耦,並且可以再傳輸過程中靈活混合。這個特性引起了電信特別是新聞機構的注意。1994年路透社收購了 Teknekron 。

​ 由於訊息佇列再金融交易中應用的反響,BIM 在1990年也開始研發自己的訊息佇列軟體(BIM MQ),並且逐步演化成 WebSphere MQ 並統治著商業訊息佇列平臺市場。同時微軟開發了Microsoft Message Queue(MSMQ)。然而這些商業MQ問題在供應商壁壘,各個廠商的 MQ 之間無法互通。為了解決這個問題,Java Message Service(JMS)在2001年誕生了,試圖通過提供公共 Java API的方式隱藏MQ各個供應商提供的實際介面,從而跨越壁壘和解決互通問題,但是由於使用單獨的標準化介面來膠合眾多不同的介面使應用程式反而變得更加脆弱。

但是由於使用單獨的標準化介面來膠合眾多不同的介面使應用程式反而變得更加脆弱。

搞不懂這句話的邏輯是哪裡來的,也不懂為什麼說AMQP更加優秀。

如果都實現了AMQP的訊息中介軟體A和訊息中介軟體B,難道A提供的客戶端可以訪問訊息中介軟體B嗎?