They need to follow the code example on the IBM page I sent you and disconnectService after usage.
I believe that disconnectService simply disconnects from the background service job but does not CPF1164 style end the job. (Pretty sure of this, however I have not tested recently)
If they are not issuing a disconnect that is the most likely cause of the creation of tons of new jobs. Nothing is really being re-used because they are not disconnecting from the data queue service jobs ever.
Now if this just started and they have had their code this way for a while, that's another issue altogether and perhaps something related to new IBMi releases.
Can't really provide much more insight without seeing/knowing the code.
Regards,
Richard Schoen
Web:
http://www.richardschoen.net
Email: richard@xxxxxxxxxxxxxxxxx
----------------------------------------------------------------------
message: 1
date: Fri, 10 Jan 2020 21:03:55 +0000
from: Dawn May <dawnmayican@xxxxxxxxxxx>
subject: Re: Data Queue Prestart Server Job (QZHQSSRV) Reuse
Hi Richard and Joe,
Thanks for the tips thus far.
The application is using the AS400 object connection pool. I don?t know if the connection pooling is set up correctly - I have my doubts as there are thousands of new connections each hour during the peak timeframes.
There is not an accumulation of data queue server jobs. They start, handle a request, then end. I was expecting them to be reused and go back to PWRW state, but they do not.
The number of job started (CPF1124), job ended (CPF1164), and user connected (CPIAD09) messages for the QZHQSSRV jobs is almost identical throughout each hour of the day.
I had previously found the documentation both of you pointed me to, but I cannot find anything that talks about the reuse of the QZHQSSRV prestart jobs.
When the application does a disconnectService or a disconnectAllServices, is that what causes the QZHQSSRV job to end? (As in CPF1164 end, not go back to PSRW state and wait for the next request).
If so, is this perhaps an indication the application is not properly using the connection pool, but rather connecting and disconnecting to the data queue server?
I?m sorry if these are vague, basic questions, but this is completely out of my area of expertise, but I?ve been asked to help understand why the prestart jobs are not reused.
I am trying to figure out just enough to ask the right questions for the application team?. they are Linux developers, not IBM i experts.
Dawn
As an Amazon Associate we earn from qualifying purchases.