Skip to content

Machine sizing for running a process via Runner

BotCity Runner is a lightweight service responsible for downloading automation binaries and executing them in the local environment. On its own, it requires few resources — what determines machine sizing are the applications opened and handled by the running automation.

This guide defines the criteria for correctly provisioning a machine for automation executions via Runner, avoiding both undersizing (failures due to lack of resources) and unnecessary oversizing.


Minimum requirements

The values below represent the floor for the Runner to function. Actual sizing must take into account the type of automation being executed.

Component Minimum requirement
CPU Intel® Core™ i3 (3.20 GHz) or compatible
RAM 4 GB
Operating system Windows (7, 10, Server), Linux (supported distributions), or macOS
Java JRE 11 or higher
Storage 2 GB available for the application (4 GB recommended)
Network HTTPS connectivity with the BotCity Orchestrator

Attention

Minimum requirements do not equate to ideal sizing. For desktop, SAP, or browser automations, actual consumption may be significantly higher. Always consider the type of automation before provisioning the machine.


Consumption by automation type

There is no fixed vCPU/RAM value per Runner. Consumption depends directly on what the automation does. The values below are initial estimates — the final sizing should be empirical, based on real monitoring.

Automation type Estimated consumption Note
Desktop (SAP / Protheus / Proprietary tools) High Heavy graphical interfaces, parallelism of headless automations.
Note: desktop/GUI automations do not run in parallel on the same machine (they share the graphical session); parallelize with separate machines/sessions, not with more CPU/RAM
Browser (Selenium, Playwright, WebBot) Medium-high All options instantiate a real browser. Consumption varies with the number of sessions, open tabs, and page complexity. Headless automations also fall into this category
Background / API Low-Medium Integrations via API without browser or graphical interface manipulation. Consumption depends on data volume and libraries used
Data processing Variable Depends on volume, complexity, and libraries involved

Initial estimate by type

  • Desktop: 4 vCPUs and 8 GB of RAM as a starting point (important to validate the requirements of the handled applications).
  • Browser (Selenium, Playwright, WebBot): 4 vCPUs and 8 GB of RAM as a starting point — increase according to the number of simultaneous sessions.
  • Background / API: use the Runner's minimum requirements (2 vCPU / 4 GB) as a starting point and validate with real monitoring.
  • Parallel executions on the same machine: monitor consumption under representative load and adjust from there. As a conservative reference, consider multiplying resources by the number of simultaneous Bots — in practice, peaks rarely coincide, so actual sizing tends to be lower.

Ideal sizing follows an empirical cycle:

  1. Provision the machine with the initial estimate based on the automation type.
  2. Run the automation under representative load and monitor CPU and memory in real time.
  3. Adjust iteratively: reduce if there is consistent slack; increase if there are spikes causing slowness or errors.
  4. Document the result by automation type to build a reliable internal reference.

Tip

Recommended monitoring tools:

  • Windows: Task Manager (Performance tab) or Resource Monitor.
  • Linux: top, htop, or vmstat.
  • Azure VMs: Azure Monitor with VM CPU and memory metrics.
  • For historical analysis, consider integrating tools such as OpenTelemetry, Dynatrace, or Grafana into the environment.

Quick provisioning reference

Use as a starting point — always validate with real monitoring.

Scenario vCPUs RAM Note
1 background / API Bot 2 4 GB Starting point to validate with monitoring
1 desktop Bot 4 8 GB Starting point
1 browser Bot (Selenium / Playwright / WebBot) 4 8 GB Increase according to number of sessions and tabs
Multiple simultaneous Bots Monitor under real load; conservative reference: multiply by the Bots, but actual consumption tends to be lower
Multiple Runners + multiple mixed Bots 8–16 16–32 GB Size according to demand and automation type