I use ActiveMQ extensively throughout our application. It’s a typical client/server application where the client displays a table of data that gets dynamically updated when something changes on the server. Currently the way we operate is the server subscribes for data request messages, the client subscribes for an initial load topic (data.client’s ip address) and a generic data.updates topic. Then when the server receives a data request message it sends out an initial burst of “all data” to a client specific topic (something like data.ip address (this topic is specific to that one client)). Is there a better way to do this? It seems clumsy and verbose to have the “data request message”, and the client specific topic.
One idea is to have the server subscribe for Advisory topics, that way the server will know when a client subscribes for an initialize topic like data.. This will get rid of the data request message.
Is there a better way to send an initial load of data to a client than with a “private topic”?
I think the better way is to turn this into a request/response type of message, either synchronous, or asynchronous.