I have a series of job scheduled to run in a JMS queue. I scheduled say, 10 jobs to run. I always see only 8 jobs getting processed out of 10. If any one Job (in a list of 8) is processed, Job No.9 gets to process now. The same holds true for Job No.10
1) Out of 10 JOBS , 8 JOBS are running.Does that mean the other 2 are in the JMS server waiting for Queue receiver?
2) Why only 8 jobs are running and not 10 jobs?
3) Where are the Jobs lying?
1) The number of jobs that get processed at a time is dependent on the number of message driven beans listening to the queue at that time.
You can set this with the <max-beans-in-free-pool> tag in your weblogic-ejb-jar.xml. (if you are using Weblogic)
<ejb-name>Message Driven Bean</ejb-name>
The other jobs (still to be processed) are maintained in the database or a file. It depends on how you have configured your JMSStore while setting up the queue. You can check that in your config.xml or in the console
Hope I have answered your questions.
Did I say <max-beans-in-free-pool> . No, it has to be <initial-beans-in-free-pool> to be set to 10. What was I thinking :)
There is another parameter u need to change if u are using weblogic. The number of execute threads. If u have a low # for execute threads, or if ur thread count increase is low - it limits the number to 8. I am not sure what is magical about the number 8! Increase the thread count for that managed server and try. It worked for us in weblogic 7.0 - not sure about the newer versions.
Yeah. I am using weblogic 7.0. Shall try that. Thanks for the information.
Under Servers We have admin and 1 managed server. In that, I went to JMS tab. I currently have the JMS Thread Pool Size as 15.You are mentioning about thread count size.Are you mentioning about the JMS Thread Pool Size. Because I cannot see something like the thread count.
Our current configuration for JMS Thread Pool Size = 15. For which,I believe you are saying it might be low and should be increased. What is the proposed or actual value that you think it should be increased for me to see more than 8 jobs running concurrently. Thanks in advance. - Jenny
Thank You very much Sowmya.I tried that using console. It worked for me. Thanks a TON.
I would like to know one more thing.
What is the optimum value for the EXECUTE QUEUE?
The weblogic book does not say what value should be good.However it says, the more the value,less the SERVER performance.
One more thing it adds is incase of the clustering with managed servers,the CONTEXT switching will reduce the server performance.
I have 1 admin and 2 managed servers in my application.
1) Can we change the admin server EXECUTE QUEUE value also?
2) Should we change the Managed servers EXECUTE QUEUE value only?
3) I currently tested with 1 admin and 1 managed server.I changed the managed server EXECUTE QUEUE value to 50 and added 20 JOBS and saw 20 jobs from our jobqueue application page.
I currently have exactly the same problem using Weblogic 8.1 SP2. I dont find in the console how to change the # of threads in the server.
If you could me where it is ....
Thank's in advance.
1)Go to config.xml
2)Look for Execute Queue - You should see default value as 15.For this, you will see 8 jobs ONLY.If you increase the value from 15 to 50, you can see 20 jobs in the queue.
I am some more questions.
We have several messages (in my terminology I say JOBs instead of messages) being added. We use MDBeans to process these messages.
Say we have 60 messages being put by the users. I want to see all the 60 messages(jobs) in my JSP. Currently I see only 20 and nothing more than that although all 60 are added and waiting to RUN in the JMS Server.
We currently display the messages from the ObjectMessage in the MDBean. We take this to a JSP and print it out.
I am confused as to where the rest 40 are, as I do not see them displayed.
This is really a HIGH PRIORITY Issue for me. Can anybody really help me please.
I was not having this <pool> tag earlier.But,even after adding this <initial-beans-in-free-pool> in the xml file you mentioned, it still did not work.
It is still displaying the same 8 jobs for me.
Anything else that I am missing. Please help. Thank You.