Loadbalancing between Back Office Robots


#1

Dear all,

we are intending to use several back office robots to process different folders from one shared “inbox” folder.

Each robot will select the latest folder from the inbox and start processing it by moving it to another location. We are not sure how we can prevent conflicts between the different robots (i.e. that two robots try moving the folders in parallel).

Do you have any ideas on how to handle this? From our point of view we could either use retries (i.e. try to move folder if not possible use next) or try-catch blocks. Does anyone have experience with this?

Any help is highly appreciated.


#2

Try queues, maybe? https://orchestrator.uipath.com/docs/managing-queues-in-studio


#3

Hi Stephan, The easiest way to achieve this is to use Orchestrator, this way you can use the queue functions, and prevent multiple robots trying to work the same ‘transaction’.

Firstly you would create a separate automation as your Load phase. The Load phase will read all of the data from the email account and load it into the queue in Orchestrator as unique transactions for all of your robots to process.

Your multiple robots will still do the same Work process, but instead of going straight into the email account, they will take their input in the form of a transaction item in Orchestrator, this transaction will give them data, such as the folder or file name which the automation needs to work on this specific case, and the robot will proceed to work that one folder.

Once a robot gets a transaction in Orchestrator, no other robots can get that item and will simply move on to the next transaction in the queue. Once the Robot completes a transaction for that file/folder, it will mark the transaction as completed (can also set for Business/Application Exceptions under those circumstances) and move onto the next transaction in the queue which is now already been/being processed.

As your Load phase is completely separate to the Work phase, you can also schedule it up to load at certain intervals or times during the day.

Apologies for the mammoth response! this is really only the tip of the iceberg in terms of what Orchestrator can do, find out more in the UiPath Knowledge pages here.