我在云上有一个RabbitMQ实现的队列,我已经写了一个Node.JS接收器和发送器,基本上将发送和接收来自队列的消息。我基本上点击了我的队列的uri并创建了一个连接。
我的问题是:由于我的接收者在防火墙后面,并且不在任何公网IP上,队列如何将消息发送到我的队列?它使用什么技术将消息发布到我的队列?我的接收器是否连续轮询队列?
发布于 2013-05-01 16:21:07
由于我还没有找到这个问题的答案,根据RabbitMQ文档,这是我的观察结果。
在大多数应用程序中,当队列不在系统外部并且可以访问时,实现观察者模式是正确的想法。
在我的例子中,当队列在系统之外(在云上)时,接收器代码会轮询队列中的任何消息,以下来自RabbitMQ站点的示例代码证实了这一点。
while (true) {
QueueingConsumer.Delivery delivery = consumer.nextDelivery();
String message = new String(delivery.getBody());
System.out.println(" [x] Received '" + message + "'");
}也可能有一些相同逻辑的其他实现。
https://stackoverflow.com/questions/14952372
复制相似问题