cancel
Showing results for 
Search instead for 
Did you mean: 

Automatic Scalability

PepitaS
Level 2
Hi there, I'm interested in building a scalable RPA solution for data processing. I've seen that Blue Prism's scalability doc gives a high-level scalability example here: https://www.blueprism.com/uploads/resources/white-papers/Understanding-RPA-Scalability-The-Blue-Prism-Example-1.0.pdf . It uses multiple queues and processes to 'scale up' several robots when needed, but I can't find documentation on how to actually build such a system that can dynamically change the number of robot VMs based on work queue volume. Specifically, the doc says "It's possible to manually assign processes to robots, changing the allocation as needed. It’s also possible to create a manager robot that does this automatically". Are there any full examples or documentation for how to build a manager robot like that? I'd like to essentially build the same thing.

If not, I'm trying to think of how I could build one. Is there, for example, a way to measure how quickly queue tasks are being completed, and a manager bot can use that to decide if it's too slow and it needs to signal another robot to start processing from that same queue as well? Could I do this same thing with just one license and use multiple background processes on one robot instead of multiple robots? Open to suggestions.
1 REPLY 1

John__Carter
Staff
Staff
Hi - yes it's possible to create a 'manager robot', 'master process', 'controller' or 'supervisor' - people use different names. The idea is that you have a process whose job is to run in a loop, looking at the work queues every N minutes. Based on the volume of work found, the manager process calculates how many 'worker' processes are needed, and uses the BP command line to start sessions. Such solutions can vary in complexity, depending on how much you want the manager to do, whether it needs to monitor session progress, calculate ETA, monitor SLA breach, send notifications etc. This is a pretty comprehensive/complex example on the DX, and this is a guide to the basic principles and this is a university course (with downloadable examples) that it worth exploring.

Of course the considerable issue with this approach is that the manager process consumes a license. But, depending on your requirements, it may not be necessary to have the manager running all the time.

There are also 3rd party products like RPA Supervisor that are worth checking out.