什么是 MQ,它们与 Web 服务有何不同

Sap*_*Sap 3 java web-services jms rabbitmq mq

我最近开始研究 MQ,我有一些非常基本的问题,

  1. 如何在 Web 服务和 MQ 之间做出决定?

  2. MQ 可以只发送字符串消息还是也可以与 Java 对象一起使用

  3. 客户端和服务器所在的位置是否有任何限制?或者就像网络服务一样,客户端/发布者可以在任何地方,服务器/接收者应该驻留在公共网络上(假设它是一个公共 WS )

set*_*thu 5

  1. 消息队列主要用于不需要等待响应的异步事物。您可以在寻求响应之前阻止调用者,但这通常不是 MQ 的用途。您只会在用户等待输出的情况下使用它。网络服务则相反。你收到一个请求,处理它并在有限的时间内返回它。调用者将主要阻塞,直到收到响应。
  2. 您可以将字符串、对象、映射、字节数组发送到 MQ。
  3. MQ 的放置没有任何限制。就像网络服务一样,它们可以在任何地方,您可以从队列中写入和读取。