2010-06-30 176 views
14

我們正在研究支持AMQP排隊的應用程序。我們的一些客戶正在使用Websphere MQ。我只是很想知道這兩種協議在功能上的可互換性。我使用的是celery,只要我可以編寫Websphere MQ後端,應該允許我抽象出更低層次的東西。我試圖弄清楚的是,這將是多麼困難的挑戰。AMQP vs Websphere MQ

Websphere MQ是否提供了AMQP功能的超集?是否有任何「特徵」可能會讓我的生活變得困難?

回答

10

UPDATE 2015年6月23日
IBM已經宣佈MQ Light這是他們實現AMQP的。他們的Statement of Direction表示他們打算提供一些功能,以允許在MQ Light上運行的程序能夠在未來某個時間在MQ中運行,但尚未宣佈什麼時候會發生。截至撰寫本文時,MQ Light處於開放測試階段。


獲取的有效載荷在這些系統之間移動,將與一個簡單的橋接的應用程序,讀取關閉一個系統和寫入其他相對簡單。他們都有隊列和主題,並且可以有明確的路由。

有趣的部分包括這樣的樂趣概念...

  • 映射回復到目的地。尤其是動態的回覆目的地。
  • 事務性
  • 任何一種路由複雜得多,「撿掉這個隊列/主題,投入到這一塊。例如該路由到多個目的地基於隊列名稱的網關。
  • 消息級安全。
  • 映射身份的連接級別的安全
  • 的終端到終端的消息加密不可能

所以,如果你需要的是「從AMQP拿到訂單上:。QUEUEA,投入到WMQ:QUEUEB「和transactiona誠信並不重要,你應該有一個簡單的時間。除此之外,它取決於你想要做什麼。

+0

可能應該發佈一個問題,但IBM Web MQ的本地傳輸是什麼?我認爲這是MQTT,但顯然這是他們最近添加的一件事。 – 2013-04-09 15:24:34

+3

它是一個專有的有線協議。通常我喜歡開放標準,但WMQ的一個優勢是IBM可以根據需要更改有線協議。因此,當他們希望通過單個套接字共享多個連接並添加預讀流作爲性能增強功能時,即使這意味着更改連線格式,他們也很容易做到。巨大的性能影響與這些。如果他們發表了這個協議,這將會變得更加困難。然而,隨着開放網絡上更多的異步,可能需要支持開放協議或在某些時候發佈MQ。 – 2013-04-09 18:39:52

1

IBM MQ now supports AMQP 1.0 clients(包括現有的IBM MQ Light客戶端)通過引入MQ 8.0.0.4中的AMQP通道。

+0

我可以使用8.0.0.4中的AMQP通道功能將IBM MQ與其他AMQP產品(如RabbitMQ)集成嗎? – sijo0703 2016-05-25 18:35:32

+1

我懷疑可能不是。 RabbitMQ支持AMQP 0.9協議,而IBM MQ支持AMQP 1.0。兩個協議版本不同,不能互換。即使他們都使用相同的協議級別,兩種產品都無法將客戶端連接到另一個供應商的服務器 - 我知道這一點。 我想可能編寫一個您自己的客戶端應用程序,它使用AMQP 0.9與RabbitMQ服務器和AMQP 1.0進行交互,以便與IBM MQ隊列管理器進行交互,使用所述應用程序充當兩者之間的橋樑。 – LaurenceBonney 2016-07-14 16:52:24