4 Replies Latest reply on Nov 1, 2012 12:20 AM by clebert.suconic

    Creation of Temporary Queues ClientConsumer

    jhohenstein

      First, a note, I am getting started with someone else's code and am relaying an issue.

       

      We have an application where clients connect and disconnect frequently from a socket server. That socket server is connected to HornetQ. Services are on "the other side" of HornetQ. When the client connects to the socket server, the socket server connects to HornetQ and creates a temporary queue specific to that user so services can reply to requests.

       

      The claim is that this process blocks some or all queue processing while the queue is being created. When magnified by the large number of clients (and therefore queues), this issue becomes unacceptable.

       

      Does this sound right? Is there blocking behavior when these queues are being created? What suggestions do you have for resolving this type of problem. The currently proposed solution to this problem is to make the socket server and the connected service (e.g. a chat service) stateful so that both ends of the connection are aware of what instances they are communicating with. This pattern disturbs me. I would prefer that the service end of the connection be much less stateful so we can more flexibly load balance services.