Long Perform Maintenance Task Execution and request/ task thread settings

Hi there, we have two task servers A and B. The task servers A and B have following request and task thread settings as below in the screenshot.

We have a dedicated Perform Maintenance - Process Workflow task to process backgrounded events with options checked.

Any time above task runs on Task Server A, the execution takes more than 10 mins while if it runs on Task Server B (which has TASKTHREAD value defined), the execution is super fast like in secs.

Hence, just want a confirmation if the fast execution on Task Server B is due to the defined taskthread value?

  1. Can the thread value be defined for Task Server A too?

  2. Any default value be defined?

  3. Can task servers have both request and task thread values?
    …

Per my understanding, the task and request threads have following significance:

Task threads handle background tasks while request threads process user requests for access and other actions.

Elaboration:

Task Threads:

Task threads are responsible for running background tasks that are crucial for maintaining and updating data within IdentityIQ. These tasks include account aggregations, identity refreshes, and other automated processes. Optimizing task threads can help improve overall system performance and reduce task execution times.

Request Threads:

Request threads handle user requests for access, such as provisioning, certification, and role changes. They process these requests and initiate the necessary workflows to fulfill them. Properly configured request threads ensure that user requests are processed efficiently without causing bottlenecks.

Hi Rabindra,

If I remember correctly, the numbers you are seeing in the debug pages are the current number of Request or Task threads running on that particular server at the time.

You might try enabling partitioning which could split up the tasks being performed on your “Perform Maintenance.”

Hi Larry,

Correct me if I am wrong but we manually the configure the number of task threads available on a host via the “Task Threads” entry, is not it?

I am unsure if these values are auto-populated by the system.

Any suggestion on this: @enistri_devo ?

You might be thinking about the Request Definitions where you specify the maxThreads that can be used per server.

In the Identity Refresh Partition or any of the Partition items inside the RequestDefinitions, you can set the maxThreads per server to be used.

Hi @rabshrestha,

Generally yes.

About that, It could depends from varius factor, some on IIQ some on server.
On IIQ side:
you can define the max numbers of thread(on Server object) that you want each server must use. Generally on IIQ you can set the max number for the task server and max number -1 for UI server, to not affect the user experience. Also you can set on Request Definition object the max threads for each actions and you can set the max number of thread for partitioning.
For example, if you 2 UI with 4 cpu for each one and 2 Task with 8 for each one, you can set 8 for on each server object for the task server and 3 for the UIs. On request definition and for partitioning you can use at least 22 threads.

So you can review if the configuration on your IIQ its correct and both server have the same conf.

On Server side:
understaning what happens on server its little more complicated. You must to analize the processes, the memory usage etc… On a server thare are a lot of thing can cause preoblems. I suggest to you to make a little analisys and performance test and check the KVM settings. Take a look on my post for it.

1 Like

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.