000037375 - In RSA Archer, the Max Thread Per Job Type option in the Job Engine Manager can result in under-utilization of job threads in some cases

Document created by RSA Customer Support Employee on Apr 30, 2019
Version 1Show Document
  • View in full screen mode

Article Content

Article Number000037375
Applies ToRSA Product Set: RSA Archer
RSA Version/Condition: 6.5 and greater
IssueUnder-utilization of job threads is observed due to the Max Thread Per Job Type setting when the job queue is filled with jobs of few types.
CauseWhen the Max Thread Per Job Type setting is enabled in the Archer Control Panel under the Servers tab of the Job Engine Manager, the job engine ensures that the total number of jobs for any specific job-type does not cross the limit set by this configuration. It can cause an adverse effect when the total number of jobs in the job queue is limited to a few types, which is less than the total number of threads available. The Job Engine does not process more jobs beyond the Max Thread Per Job Type setting under any circumstance.

Example Scenario for Illustration of the issue only
User-added image

  • Total number of Job Threads: 20
  • Max Thread Per Job Type: 3
  • Job Queue has 3 types of jobs: 
    • SendNotificationJob: 30
    • DirectExecuteDataFeedWorkflow: 10
    • PhysicalCalculationsWorkflow: 30
In the above scenario, only 9 threads (3 x 3 Type of jobs) would be utilized. The remaining 11 will be left unused expecting the arrival of a job with a new job type. This may be wrongly perceived as performance degradation.
ResolutionThe Max Thread Per Job Type setting is introduced to avoid starvation to low priority jobs due to the high number of high priority jobs. The setting gives best result when the job engine is under load with a high number of high priority jobs which results in the low priority to remain in the queue for a long time (or forever). Enable the Max Thread Per Job Type after careful analysis of the job engine performance and job execution patterns.