Scaling RPA
WorkFusion Platform provides solution for auto scaling up of the RPA Systems. It's important to understand the calculations and the parallel execution that is supplied out of the box by WorkFusion product.
It is also important that appropriate decisions are being taken for fast processing of the RPA.
Transition architecture
The scale management is to be calculated on the basis of RPA to be done on the client applications.
Decision factors:
- How fast is a client application? For example, how long it takes to read the screen, and so on
- Can parallel processing be performed in the application onthe same RDP node?
The solution uses RPA Manager for distribution of load among the registered RPA Unit(s).

Scaling solution details
WorkFusion Control tower sends BOT/Machine Tasks to RPA manager where they are queued up, so that available RPA Unit can pick up tasks for execution.
Important considerations for achieving scaling up.
- Horizontal scaling up can be achieved by putting up RPA Units to RPA Manager.
- For task distribution strategies, refer Task distribution strategies.
- For segregating the tasks or business process steps, WorkFusion Platform can be configured accordingly. See Task distribution.
- Number of bot calculations.
- WorkFusion provides multi-threaded execution of Bot Tasks using out-of-the-box Bot Source configuration. See RPA high load.
- Use Node capabilities for distributing the robot RPA tasks.
RPA scaling unit definition
The RPA Unit can be a containerized Windows image, containing the following components:
- Nginx
- RPA Hub
- RPA Nodes (1 to 2 nodes is the most efficient from resource use perspective and easy of maintenance)
RPA development best practices
Apply the following tips and tricks:
- Use
driver.getPageSourceto get the complete DOM of the HTML web page.- This helps to avoid multiple hoping and hopups to RP node.
- Use the HTML page source and then use XPath to read elements in a Groovy script.
- Use
driver.executeScript(String script, Object...args)for enhanced performance.- Sometimes, reading the RPA User Interface like Swing Applet having lots of columns and rows can be a costly call, so it is recommended to use the RPA Unit script execution and return the desired output in JSON to a Groovy script.
- It is important to note the timeouts of the driver script.