Remember, it's going to take nx time for the client to put n messages.
The MDB can't get the first message until after the first one of those x periods of time.
So the MDB has to wait x length of time before it can get the first message.
So if you are measuring the length of time it takes for MDB to process by subtracting the start time from the end time... and forgetting to exclude the time it takes for the client to put....
There is some parallelism here. But if the MDB processes each message faster than the client commits the put, then it is still waiting.
And, of course, if the client really doesn't commit the puts until all of them are done, then the MDB has to wait for nx before it can do any work. _________________ I am *not* the model of the modern major general.
hi fjb_saper the problem is like
Put 2000 messages using MQClient on to Queue takes = 2 hours say.
process 2000 messages using MDB takes = 2 hours
say when they ran one after another it is taking (2+2) 4 hours.
if one start both MQClient and MDB together it should be takeing 2 hours right. But it is taking still 4 hours and more.
Each message commited by MQClient independently not depended on other messages. MDB is running concurrently. then why the slow down.
This information is not specific enough. When does the client put the first / last of the 2000 messages. When does the MDB do the first/last get?
Your 4 hours are dependent on
first and last put to the queue
first and last commit of the putting application.
Now if it takes 2 hours to put the 2000 messages (must be a lot of other computing going on) and the first commit on the putting client is at the end of the 2000 messages you have already lost 2 hours during which the MDB could not get any of the messages as they were not yet committed.
If the last of the put messages is put 4 hours after the 1st and each are committed individually processing speed does not matter. The total processing time (first put to last get) is then really dependant on last put to last get and the MDB can have spent 99 % of the time idle waiting for the messages from the put application.
I hope you chose your numbers as an example. I have seen put/get rates of more than 5000 messages per minute.
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum