【发布时间】:2013-05-03 20:47:56
【问题描述】:
我有一个 AMQP 应用程序,它在客户端有一个持久的 RabbitMQ 队列,在服务器端有一个 RabbitMQ 队列。客户端始终写入本地持久队列,这些消息使用铲子插件传输到服务器。
Producer -> Local Queue --------- SHOVEL ---------- Remote queue -> Consumer
无论服务器是否存在,应用程序仍然可以正常工作,并且 shovel 会尽可能发送。另一方面,服务器不需要知道客户端的位置,因为它总是从本地队列中消耗。我想使用 FilePersistent Mailbox 将此拓扑迁移到 AKKA。甚至可能吗? Akka 核心库中是否有类似 Federation 或 Shovel 的插件。
PS:我想要实现的是完全替换 AMQP 以摆脱 RabbitMQ。它工作正常,但它是另一个需要安装、配置和维护的软件。我想从我的应用程序中仅使用库而不是像 RabbitMQ 这样的其他服务器来提供所有这些功能。
只是为了澄清一点我想要实现的目标是这样的:
Actor1 -> DurableMailBox1 ----Shovel? Federation?---- DurableMailbox2 <- Actor2
[编辑]
看起来没有办法直接与邮箱通信。可以使用 AKKA 实现的可能拓扑如下:
Remote Actor1 -> [DurableMailBox1 <- Actor2]
可以保护箭头以确保邮件传递,但不能将邮件从一个邮箱自动复制到另一个邮箱。
【问题讨论】:
标签: akka