0

我需要在几个(3 个和更多)应用程序之间发送(同步)数据。Message Broker 必须解决几个问题:

  1. 向未知数量的接收者广播一条消息。
  2. 控制成功红色。应用程序只能成功/读取消息一次或仅在分配给此应用程序(连接)的一段时间后。或者以某种方式在客户端解决它,而不会对服务器/MB造成高负载
  3. 在所有接收者成功读取消息后删除消息。它可以在中央应用程序的客户端解决,但本机可能性将很有用。

只有一个应用程序必须知道整个系统中存在多少应用程序,否则它可以转移到 Message Broker 的职责。

我已经尝试过:Amazone SQS - 它是纯队列,没有任何高级工具。RabbitMQ - 不可能在不删除消息的情况下读取消息。(可能以其他方式存在)

4

1 回答 1

0

RabbitMQ 非常适合。

  1. 消息发布到主题,并且此消息复制到所有连接/绑定的队列。必须首先创建和连接/绑定队列
  2. 每个应用程序都使用自己的消息副本
  3. 消息无需删除即可读取,只有在成功进程后才能删除。必须在没有 AMQP_AUTOACK 参数的情况下创建队列,并且指令 amqp.auto_ack 在 php.ini 中必须为 0
于 2012-05-26T20:31:43.060 回答