We have successfully automated five back-office processes using UiPath, but as we look to scale to 50 bots, we are hitting performance bottlenecks. Our current infrastructure is struggling with concurrent executions and database locks. What are the best practices for setting up a high-availability Orchestrator environment and managing machine templates to ensure smooth scaling?
3 answers
To scale effectively, you must move toward a virtualized, elastic infrastructure. Ensure your Orchestrator is in a Multi-node setup with a Load Balancer to distribute the traffic. Instead of static machine assignments, use Machine Templates and Dynamic Slots; this allows the Orchestrator to allocate any available VM to a pending job. Also, look into your SQL Server performance; as you scale bots, the logging frequency increases. Consider adjusting your log levels to "Information" or "Warning" only for production to reduce DB I/O. Finally, implementing a robust "Hub and Spoke" model for your Center of Excellence (CoE) will help manage the governance of those 50 bots without causing a management nightmare.
Are you utilizing a persistent or non-persistent VDI setup for your robot machines during this scaling phase?
Don't forget about monitoring. With 50 bots, you need a dashboard like Kibana or Tableau to track heartbeats and success rates in real-time.
I agree with Megan. We used a custom ELK stack for our bot monitoring and it made identifying which of our 40 bots were failing much faster.
Jason, we are currently on persistent VMs, but we’re seeing significant costs. Would non-persistent be better? Definitely. Non-persistent VDIs combined with a "floating robot" license model in UiPath can save you about 30% on infrastructure costs. It ensures that when a bot finishes a task, the VM is wiped and ready for the next one, preventing profile bloat and session hanging which often slows down large-scale RPA deployments.