In the recent RSA Identity Governance and Lifecycle 7.1 release, we have introduced priority queues in the workflow engine. These are not exposed to end users but are designed to provide more throughput in processing workflows. In particular, if a larger request is being processed, some other types of requests can still get through if they are deemed important enough rather than waiting in line. In the past, the workflow engine processed things in a first come first served model.
in addition to help improve throughput, the priority queues will also help with isolating longer running work and identify potential problems. For example, a very large role change that is committed can generate a number of indirect entitlement changes for all the role members. These are now processed using a different priority queue than normal changes flowing through the system from explicit requests end users are making. Similarly, changes related to SQL Select, SQL Execute, and Java nodes are processed by a different priority queue. This will help workflow developers and administrators identify if there are long running custom logic that needs closer inspection.
The following priority queues are defined now:
- Normal (Default) - explicit changes flow through this queue
- Urgent - Requests of that represent user terminations or password resets are handled by this queue
- Role - Requests that are role related (usually containing indirect entitlement changes) are handled by this queue
- Custom nodes - Logic run as part of SQL Select, SQL Execute, and Java nodes are handled by this queue
The Admin->Workflow→Monitoring screen provides a real time view of what is going on in the workflow engine. The priority queues are shown in this interface so you can see how each queue is performing and where there may be bottlenecks that need closer inspection.
For more information on this feature – please check out this additional content.