Tôi không thể hiểu cách sử dụng ActiveMQ không cục bộ.
Giả sử tôi có 2 máy, cần trao đổi một số tin nhắn.
Trên trên máy tôi bắt đầu môi giới ActiveMQ:Làm cách nào để sử dụng activemq không cục bộ?
> ~/bin/activemq
và sử dụng cái gì đó như:
javax.naming.Context ctx = new InitialContext();
TopicConnectionFactory factory = (TopicConnectionFactory)ctx.lookup("connectionFactory");
conn = factory.createTopicConnection();
TopicSession session = conn.createTopicSession(false,TopicSession.AUTO_ACKNOWLEDGE);
Topic topic = null;
try{
topic = (Topic)ctx.lookup("MyTopic");
System.out.println("MyTopic was found");
}catch(NameNotFoundException nnfe){
topic = session.createTopic("MyTopic");
System.out.println("MyTopic was created");
}
TextMessage textMessage = session.createTextMessage();
TopicPublisher publisher = session.createPublisher(topic);
conn.start();
textMessage.setText("My topic message number");
publisher.publish(textMessage);
System.out.println("sendMessage2topic");
nơi trong jndi.properties tôi có:
java.naming.factory.initial = org.apache.activemq.jndi.ActiveMQInitialContextFactory
java.naming.provider.url = tcp://localhost:61616
Nhưng những gì tôi nên tạo trên máy khác để đăng ký về chủ đề này? Shoul Tôi tạo môi trường ActiveMQ cục bộ thứ hai ont máy thứ hai, và cách đăng ký vào chủ đề từ xa trên máy đầu tiên ???
Đó không phải là URL thực hiện kết nối JNDI? URL không kết nối với nhà môi giới có được nhúng trong đối tượng ConnectionFactory không? –