hi all,
     I want to process a batch of message using my own priority
algorithm. But in JMS, I can't acknowledge a single message and can
only acknowledge a session. So I decide to do it like this:
     1. Create N(=10000) sessions
     2. using a thread to manage session acknowledge like:
             for(int i=0;i<N;i++){
                 if session acknowledged{
                       receive A Message without waiting;
                       put this message to my own priority queue;
                 }
             }
      3. using another thread to process my own queue;
             get a message from my own queue;
             process this message;
             get the session of this message;
             acknowledge this session;

       because a session will receive only a message a time and it
will be blocked until this message is processed. I need create many
sessions(maybe I can make session a pool) . I don't know whether
activemq can deal with so much session. for a single consumer, I will
create 10000 session. if I have ten consumers, then 100,000 session be
created at the same time.

Reply via email to