× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Hi, Dave:

If you started 3 server jobs all waiting on the same request data queue, probably the first one to wait on the *DTAQ will be the first one to get a message, when messages arrive on the data queue. If enough messages arrive (more or less) "simultaneously", all three server jobs may be "busy" processing the first 3 messages, and whichever job finishes processing and requests another message (via QRCVDTAQ API) first will be the first one to get the next message, and so on.

What is the transaction rate and volume of messages you expect at any one time? You might find that you will be better served to start 5 instances, or even more? You could add some "instrumentation" to your server programs to record information such as a date/time stamp when each message was processed, and write that out to a sequential log file. Then, you can analyze that data, using Query/400 or SQL, etc., to determine if you are running into queuing delays, and so, it might indicate to you that you need to add additional server jobs.

If you wanted to get "fancy", you could monitor the "depth" of the queue (number of queued messages) and dynamically start additional server jobs "on demand."

I hope this "makes sense" to you?

Cheers,

Mark S. Waterbury

> Dave Murvin wrote:
Hello,

We have three server jobs, running at interactive priority, that all read from the same data queue to do a specific task. What I do not know is how the system decides who gets to read the next data queue entry. Does is just go in sequence (job 1, then job2, job 3, then back to job 1) or is it some kind of first come first served process? If job 2 is currently processing a request and it is normally job 2s "turn" when another request arrives at the data queue, does the request wait for job 2 or does it go to the first job that is ready to receive the request?

I am concerned that since these jobs are part of an interactive process, that we might get hung up waiting for one of the server jobs to finish when there are other server jobs available to process the request. Previously, each job called the server process directly, so each interactive job had their own copy of the processing programs.

Thanks

Dave

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.