回答
JMS是一個抽象消息中間件的API,如ActiveMQ或IBM MQSeries。
消息傳遞中間件有一個存儲轉發範例和異步消息傳遞,而Web服務傾向於促進同步過程調用範例。在分佈式系統中,很多可能會出錯的問題,異步處理事務往往會更好地將精力集中在當系統的一部分不可用或執行不力時需要做的事情上,而代碼需要處理的往往是很少複雜。
如果您有多個服務器偵聽同一個隊列,那麼羣集部分就變得微不足道了,在這種情況下,並行和負載平衡是免費的。
就我個人而言,我發現JMS比Web服務更容易使用,更健壯可靠,但消息傳遞中間件必須支持您要使用的所有平臺。如果所有需要彼此交談的組件都在您的控制之下,我會給予一個帶有JMS接口的消息傳遞中間件。
如果對方是外部的,那麼可能是Web服務規則,在這種情況下,您可以考慮使用精簡層將外部Web服務轉換爲內部消息傳遞基礎結構,這樣您仍然可以獲得大部分優勢。
如果它「只是將一個遠程API放在一個webapp上」,那麼它當然不會支付設置異步消息。
爲了互操作性,使用web服務。 JMS在Java世界之外很少使用。
此外,我一直認爲JMS背後的想法是排隊消息的能力,其中Web服務就像API調用和直接。我還建議你考慮將REST作爲實現 – 2010-09-02 06:35:51
根據定義,JMS僅*用於Java世界,因爲它只是一個API。儘管如此,它完全能夠與非Java系統交流,這就是重點。 – skaffman 2010-09-02 07:34:23
檢查鏈接
difference between using JMS/Messaging Middleware versus Web services
Messaging, JMS and Web Services
Choosing among JCA, JMS, and Web services
所以,如果通信應用程序是基於Java的使用JMS,如果可能不同,那麼Web服務......那就是我所遵循的。
您可以同時使用這取決於您的互操作性,規模,分佈和集成要求。
使用SOAP,XML RPC和REST的Web服務方法在使用HTTP作爲協議的情況下提供了相當的互操作性。從服務端,您可能會收到一個Web服務請求,然後將其編入消息。你的消息可以被傳送到消息總線。
JMS是一個合理的API接口與消息總線,我發現Active/MQ非常好這裏。 Active/MQ支持多種語言的JMS。
通過消息傳遞,您可以利用請求/應答企業集成模式來接收響應並通過您的Web服務返回它們。然而,考慮提供即時反饋,以確定訂單是否已經處理完畢,並反饋收到訂單的事實;您可能不需要執行請求/回覆來確認已收到訂單。
消息的好處是可以在這裏找到:http://www.eaipatterns.com/Messaging.html
您甚至可以想看看Apache Camel簡化高度可擴展的分佈式服務層的發展。
你能否就這個問題提供一些指導。 http://stackoverflow.com/questions/19706788/jersey-rest-web-service-with-activemq-middleware-integration 感謝您的時間。 – Kumar 2013-11-07 05:28:30
- 1. Web服務和JMS之間的區別
- 2. Web服務和企業服務總線之間的區別
- 3. Web服務和Windows服務之間有什麼區別?
- 4. Web客戶端和Web服務之間的區別?
- 5. Web服務器,Web容器和應用程序服務器之間的區別
- 6. BO和服務之間的區別?
- 7. 活套和服務之間的區別
- 8. REST風格的web服務和HttpServlet之間的區別
- 9. webservice,web方法和服務器端代碼之間的區別?
- 10. 運行時網頁和RESTful Web服務之間的區別?
- 11. 使用Web服務與Silverlight和WPF之間的區別
- 12. WSGI實用程序和Web服務器之間的區別
- 13. ASP.NET WebHooks和Web服務之間的區別?
- 14. Web服務文件和類文件之間的區別
- 15. Exchange服務器2007和Exchange Server 2010的Exchange Web服務之間的區別
- 16. 應用程序服務器和Web服務器之間的區別?
- 17. 服務結構之間的本地和訪客服務之間的區別
- 18. 服務編排,聚合和服務增強之間的區別
- 19. Comet服務器和XMPP服務器之間的區別
- 20. 羣集服務器和獨立服務器之間的區別?
- 21. Atom服務和REST服務之間的區別
- 22. 服務器連接和服務器實例之間的區別?
- 23. 春天web服務的罐子之間的區別
- 24. HBase:區域服務器和QuorumPeer之間的區別
- 25. api和web服務的區別?
- 26. WCF服務與Web服務和REST服務的區別
- 27. 任務計劃程序和服務之間的區別
- 28. Grails withTransaction()和事務服務方法之間的區別
- 29. Web服務的解析服務器和數據庫服務器之間的區別
- 30. 事務和TransactionScope之間的區別
請看這個問題。 http://stackoverflow.com/questions/19706788/jersey-rest-web-service-with-activemq-middleware-integration 感謝您的時間。 – Kumar 2013-11-07 05:27:24