我已经看到了很多关于如何从服务器/生产者向客户端发送消息的代码和示例,但是我很遗憾如何从客户端向服务器发送消息。它是否遵循相同的格式?
例如,假设我的服务器有5个主题:A,B,C,D,E。我的客户端只收听主题C. 所以我的服务器创建一个队列并向订阅者/客户端发送消息。 我的客户端获取有关主题C的消息。它执行一些计算,我想将消息发送回发布者(例如int)。有哪些必要步骤?
我是否需要为制作人设置目的地/主题才能收听? 我的制作人是否会自动收听所有客户(一旦他们连接)?
答案 0 :(得分:0)
我认为您可能需要对各种可用的通信模型进行一些阅读,例如: this on JMS Models
您已经开始使用主题,但您的陈述暗示了发件人和收件人之间的一对一关系。对于这个队列可能更合适。主题通常用于发布出版商对订阅者不了解(也不关心)的信息 - 并且可能有很多。
另一方面,排队旨在传递给特定目标。有了这个,你仍然可以做到“永远不会忘记”。 (发件人将邮件发送到队列中并且不等待预期的消费者处理它)
或者您可以添加响应处理 - 主要是通过添加" parallel"响应队列(初始发件人将处理来自使用者的响应消息 - 通常在不同的线程中)。
ActiveMQ和JMS有"reply-to" functionality - 发件人指示在哪里发送队列名称,它希望看到响应返回到 - 并且消费者遵守该名称。回复队列可以是固定的,也可以是发件人预先创建的临时队列。
一切都取决于您的目标模型。