E9.2 Virtual Job Queue?

jnack

Active Member
We are currently working on a re-implementation of JDE moving from 9.0 with iSeries to 9.2.7 with Windows/SQL Server. We are looking to define jobs queues in 9.2 and are wondering if we should be defining our job queues as virtual job queues to allow flexibility in the future?

Does anyone have any experience or recommendations on using virtual job queues?

Thanks,
Jeff
 
Here's a link to a recording from INFOCUS Envision 2021 that talks about the what, why and how of virtual job queues. Note: the link may only work if you are a Quest member.

 
Like you, I was interested in Virtual Batch Queues, until I read Document 2748939.1 which states:
Is this feature available for OS/400 (AS/400) Setup? - No, Virtual Batch Queues are available for Windows, Linux, and UNIX platforms
 
We did a major migration from iSeries to Windows/SQL last November, and we have utilized virtual batch queues. They have actually been quite handy for load balancing and server maintenance. The main consideration for us was the fact that by adopting that path we were essentially de-centralizing our batch servers, so any process that we had in place that required manipulation of a flat file on a specific server (such as table conversions) needed to have logic within the process to make sure the file exists on all possible batch servers (you could theoretically force it to run on a specific batch server, but to us that sort of defeated the purpose of utilizing virtual batch queues). Also due to the decentralization we had to move our UBE storage to the database from the filesystem, which hasn't caused any real issues since we have been transitioning from Optio to BIP for all of our forms.

Right now we have a total of 2 possible batch servers, one primary and one DR. We normally leave the DR batch server in an inactive state through P9655 and only activate it when switching over to DR. It has been a godsend in situations where we need to do a quick reboot of our production batch server during work hours or other types of maintenance, since users don't really see much of a difference with their submitted jobs.

Setting it up is a bit of a timesink, mainly due to the fact you have to set the oneworld queues up for not only the "virtual batch" server, but also the physical enterprise servers as well (so if you have 2 enterprise servers being driven by 1 VBQ, you would set up 3 sets of queues in P986130). The documentation on Oracle's site was pretty easy to follow and I don't recall having any real issues getting it going. I haven't used it to segregate any batch jobs between servers, since at our organization we just let them run where they run, but you could theoretically do it by making it so a batch queue is only set up on one of the enterprise servers and not the other, which would cause that to be the only option when submitting to the VBQ (we learned that the hard way by having a queue name with a space at the end, and beat ourselves up for a minute trying to figure out why jobs submitted to that queue would never start processing).

Personally, I would recommend that if you are on/going to Windows or *nix, it would be in your best interest to set it up even if you don't plan on using it or only have a single enterprise server just for the mere fact it's not at all difficult to hook additional servers into it later on down the road should the need arise for your organization. Of course, that's just my opinion, so take it with a grain of salt :)

-Terry B
 
due to the fact you have to set the oneworld queues up for not only the "virtual batch" server, but also the physical enterprise servers as well (so if you have 2 enterprise servers being driven by 1 VBQ, you would set up 3 sets of queues in P986130).
That isn't fully true.... you only have to set up one queue marked as the 'default queue' for the virtual server name.

Then, as you said, you set up the queues for each virtual server. I like that this is the case as it allow servers to say how many jobs they will allow per queue for that particular server, meaning one can add/remove servers of different CPU/memory capacity for additional processing instead of having them all have to be the same size.
 
Back
Top