Skip to Content

Sizing a large Adaptive Job Server environment


I am working with a 4.1 install and I know in 99% of situations you don't split out the AJS services any longer. However, this environment runs approximately 20,000 schedules a day with up to 4,500 an hour (75 a minute), so extremely large. 95% percent of these are WebI and ~4.5% Crystal Enterprise with a very small < .5% Lumira and Design Studio. They currently have 3 dedicated Adaptive Job Servers. Two have all servers on them on a 10 core, 32GB box. While the 3rd doesn't have WebI or Crystal scheduling services and is on an 8 core/24GB box but is also hosting search and publishing APS servers. Per advice from support, due to job servers crashing they decreased the Max child requests for WebI from 100 to 1 so it recycles each time instead of reusing the process, and at the same time increased their concurrent jobs to 48. Which I believe is a bit high, but they never see it get over 30 - 35. I believe there is a bottleneck there. They have 2 additional servers, 10 Core, 32GB that are doing nothing.

My initial thoughts are to split out the AJS servers, have 2 dedicated to WebI processing since it is so large and can slow down the machine and decrease the concurrent jobs to 35, two dedicated to Crystal since Crystal runs them locally in the job server instead of spawning them out to the processing tier, and 1 for the remaining stuff.

My second option would be to make all 4 identical servers handle all AJS processes each, but that seems a little redundant for 4 Promotion Management Schedulers, etc... then have the 5th slightly smaller server as a Misc process server.

These are all on VMWare ESXi clusters an I am already up against overlapping NUMA nodes as 4 of them are 10 core physical servers. So I really am trying to avoid adding more cores to the boxes.

I know adding more AJS servers on a single box and splitting those like it was in 3.1/4.0 is bad and causes additional traffic that isn't necessary, but having 5 AJS instances all on separate servers. It would cause more traffic, but not sure if the trade off with this heavy of an environment would be beneficial.

Any comments on splitting these would be helpful. Thanks.

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

1 Answer

  • Mar 05, 2018 at 01:27 PM

    A clearer picture of what runs where, how many job of each type etc is needed before giving any advice.
    If you have servers that "do nothing" in your words - why aren't job and processing servers there ?
    If you want to avoid unneeded traffic - place job and processing servers together.
    Create server groups to furhter isolate/separate processing trees.

    Add comment
    10|10000 characters needed characters exceeded