2013-02-19 63 views
0

我在雲上有一個RabbitMQ實現的隊列,我寫了一個Node.JS接收器和發送器,它基本上會發送和接收隊列中的消息。 我基本上擊中了隊列的uri並創建了一個連接。在RabbitMQ中接收消息的方式

我的問題是:由於我的接收器在防火牆後面,而不是在任何公共IP上,所以隊列如何將消息發送到我的隊列?它使用什麼技術將消息發佈到我的隊列中?我的接收機是否連續輪詢隊列?

回答

0

由於我還沒有找到任何答案這個問題,這是我的觀察每個RabbitMQ文檔。

在大多數應用程序中,當隊列不在系統之外並且可以訪問時,實現觀察者模式是正確的想法。

在我的情況下,當隊列在系統之外(在雲上)時,接收器代碼輪詢隊列中的任何消息,以下RabbitMQ站點的示例代碼證實了這一點。

while (true) { 
    QueueingConsumer.Delivery delivery = consumer.nextDelivery(); 
    String message = new String(delivery.getBody()); 

    System.out.println(" [x] Received '" + message + "'"); 
} 

可能有相同的邏輯的一些其它實施方案以及..