Web Services与消息传递的区别

6

在选择使用Web服务还是JMS进行集成时,应该使用什么样的参数?我对这两种方法的基础知识很熟悉,但在某些情况下,不清楚哪种方法才是最适合特定情况的。我想我正在寻找一个高级别的比较,并提供使用案例。

谢谢


1
可能是重复的问题 [消息队列 vs. Web服务?] (https://dev59.com/FnE95IYBdhLWcg3wRLwt) - Lee Chee Kiam
2个回答

4
JMS是一种消息传递服务,它是异步且双向的,也就是说你可以编写应用程序来发送和接收消息。但这需要通常使用java实现的应用程序,不能是瘦客户端。而JMS的标准协议是基于TCP的,所以可能会被防火墙阻拦。
Web服务被设计为在HTTP上传输,因此通常可以通过防火墙。但它是单向的:客户端调用服务器;服务器不能调用客户端。它只能响应客户端的调用。Web服务的客户端(特别是RestFull Web服务)非常简单,因此可以轻松地作为瘦客户端(例如AJAX客户端)实现。

3

好问题。

当我需要处理跨域问题时,通常是在不确定客户端技术的服务环境中,我会使用Web Service。同时,当我需要同步响应时也会使用它。

而当我需要以下情况时,我会选择使用Messaging(希望你所说的Messaging不仅仅是Java版本):
1. 需要异步请求/响应。
2. 高可用性。
3. 确认交付。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接