Skip to main content

Robot Queuing


Question / Problem: 

How are robots queued when the RoboServer can't run them?

Answer / Solution: 

In the Cluster Settings > Robot Execution administrators can define a value for "Max Concurrent Robots" (default value is 20). This defines how many robots could run at the same time on a RoboServer (that is part of this cluster).

Keep in mind that in the CRE licensing model, the number of assigned CRE per RoboServer also limits the concurrent robots.

E.g. If  "Max Concurrent Robots" is set to 20, but the RoboServer has 5 CRE assigned, then only 5 robots will be able to run concurrently on the RoboServer, regardless of the "Max Concurrent Robots" value.

When a robot is started, one of the first things that are checked is if the cluster on which the robot should run has free "slots" for this robot (i.e. the cluster has at least one RoboServer that is running a number of robots less than "Max Concurrent Robots").

If there are no RoboServers with available slots, the robot could be queued or return a message. The behavior depends on how the robot is started.


Kofax RPA uses two different queues for robots, if needed:

1. Management Console queue. This queue doesn't have a set maximum size.

2. RoboServer queue. The size of this queue can be configured in Management Console > Admin > RoboServers > Cluster Settings > Robot Execution > Max Queued robots

Here is the intended behavior when there aren't available slots for a robot, depending on how the robot was started:

How the robot was started Result (when no slots available)
  • Schedule
  • Kapplets from v10 and Earlier

The robot is queued on the Management Console queue.

The list of running and queued robots can be seen in Management Console > Task View

  • .net /Java API
  • Kapplets from v11 and Later

The robot is queued on the RoboServer Queue.

If "Max Queued robots" is 0, the robot will return an error about not being able to run (e.g. "No slots available")

  • manually (from Repository)
  • REST request
  • SOAP request

These runs don't get queued. This is because running the robots in this way is supposed to be a short lived request so they don't get put in any queue.

If the cluster on which these robots should run doesn't have any slots available, the output of the robot will contain a message about this ("No slots available").

Applies to:  

Product Version