2013-08-22 27 views
0

** *您好,所有如何得到它安裝在另一臺機器的RabbitMQ服務器消息

我有兩個machines.One是真實的,另一種是由VMware Workstation.They安裝經由NAT

真正的一(主機)連接被設置爲: IP:192.168.241.1 子網掩碼:255.255.255.0 網關IP:192.168.241.2

和虛擬機是設置爲:IP :192.168.241.11 子網掩碼:255.255.255.0網關 IP:192.168.241.2

,我已經安裝的RabbitMQ無論是在主機和viratual機。

我在主機上運行此代碼:

ConnectionFactory factorySTC = new ConnectionFactory(); 
factorySTC.setHost("localhost"); 
factorySTC.setPort(5672); 
Connection connectionSTC = factorySTC.newConnection(); 
Channel channelSTC = connectionSTC.createChannel(); 
channelSTC.queueDeclare("queue", true, false, false, null); 
String message="helloworld";  
channelSTC.basicPublish("","queue", 
MessageProperties.PERSISTENT_TEXT_PLAIN,message.getBytes()); 

我的意思是,我想送「地獄世界」排隊「排隊」

,我在我的主機上運行的代碼(其IP設置爲192.168.241.11以上):

ConnectionFactory factorySTC = new ConnectionFactory(); 
factorySTC.setHost("192.168.241.1"); 
factorySTC.setPort(5672); 
Connection connectionSTC = factorySTC.newConnection(); 
Channel channelSTC = connectionSTC.createChannel(); 
channelSTC.queueDeclare("queue", true, false, false, null); 
QueueingConsumer cosumerSTC=new QueueingConsumer(channelSTC); 
QueueingConsumer.Delivery delivery = cosumerSTC.nextDelivery(); 
String message = new String(delivery.getBody()); 

,但它不work.It失敗,一些表明「連接超時......」

那麼,如何解決這個問題呢?我的意思是,我想從安裝在與我的電腦在同一局域網中的機器上的rabbitmq隊列發送消息...

非常非常非常非常感謝...

Regards ...

回答

0

您不需要在第二臺機器上安裝rabbitmq服務器。總的來說,你有一臺服務器,每臺其他機器發佈到隊列/交換機,並從一臺服務器上的隊列中讀取數據。其次,如果你正在獲取連接超時,那麼你有一個網絡問題,很可能是防火牆問題。

相關問題