2012-10-10 92 views
3

我們正在尋求開發一些服務,但不確定哪種「響應」機制是最佳路線。兩個競爭者是:HTTP回調與消息傳遞的優缺點有什麼區別?

  1. HTTP回調,其中該服務將通過「查驗」它與通過HTTP發送更新消息更新客戶端應用程序請求
  2. 消息傳遞,其中該服務將更新通過發佈消息到發佈 - 訂閱隊列中的消息服務器

在這兩種情況下,無論是主叫方和服務是我們網絡中的客戶端,我們必須對他們進行全面控制,事我們開發是唯一的用戶的服務惡習。

每種向調用應用程序提供狀態更新的方式有哪些優缺點,以及通過一種方法或其他方法提供初始請求會有什麼優點/缺點?

注意:我們首先想到的服務是類似於SendGrid的電子郵件服務,由於各種原因我們無法使用該服務,但仍需要相同的功能。

回答

3

主要區別在於您可以通過郵件服務器「開箱即用」獲得的服務質量。

如果您使用HTTP,那麼您的應用程序必須處理消息未按預期到達時發生的情況。要了解您需要考慮的問題以及解決這些問題的複雜性,請查看WS-ReliableMessagingHTTPLR

通過消息傳遞,您可以獲得可配置的可靠性水平。現在有很多很好的選擇,比如ActiveMQ,RabbitMQ,0MQ。

我個人的偏好是用於可靠性要在傳輸層(由消息)來處理,但隨後爲一個很好的討論和不同意見,檢查出「Nobody Needs Reliable Messaging.

相關問題