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.