Hello BAS team,
We are running BAS Premium (engine 30.x) in headless mode on Windows Server to execute compiled scripts at scale. We do NOT use BAS Studio at runtime — instead we drive the engine programmatically from a Node.js worker using the bas-remote-node library. Each Node worker process opens one engine, downloads/extracts it on first run, and launches multiple concurrent browser runs through that single engine connection. We have hit a concurrency limit and would appreciate your guidance.
Our setup:
- Node.js (v20/v22) worker process per machine, using
bas-remote-node to start the engine and run a compiled script repeatedly with different parameters/profiles.
- Each "run" = one fresh browser (cold start), pinned to its own proxy and fingerprint profile.
- Windows Server, plenty of CPU/RAM headroom.
What we observe:
- A single Node worker process runs stably at up to ~30 concurrent browser instances. Failure rate stays low (~1–5%).
- When we raise a single process to ~50 concurrent, the failure rate spikes almost immediately. The failures look like engine cold-start / startup timeouts and dropped control connections (the engine websocket / control channel) while many new browsers launch at once.
- Scaling horizontally — more machines, each kept at ≤30 concurrent — works fine and does not raise the error rate. This strongly suggests a per-process (or per
bas-remote-node connection) limit, not a network, proxy, or hardware issue.
Our questions:
- Is there a known or recommended maximum number of concurrent browser instances per single engine process, or per single
bas-remote-node client/connection?
- Is new-browser cold start serialized/throttled internally by the engine or by the remote protocol? If so, is there any setting to widen or tune it?
- For high concurrency on one machine (e.g. 50–100+ browsers), do you recommend running multiple separate
bas-remote-node clients / engine processes on the same machine, or is there an engine/library configuration that supports this safely within a single process/connection?
- Are there any engine flags or
bas-remote-node options to reduce cold-start time, or to raise the tolerance/timeout of the control channel so it survives bursts of simultaneous launches?
Our goal is to run several hundred concurrent Chrome instances per server reliably. Any official recommendation on the right architecture (clients-per-N-browsers, engine tuning, etc.) would be very helpful.
Thank you for your support.
Hello BAS team,
We are running BAS Premium (engine 30.x) in headless mode on Windows Server to execute compiled scripts at scale. We do NOT use BAS Studio at runtime — instead we drive the engine programmatically from a Node.js worker using the
bas-remote-nodelibrary. Each Node worker process opens one engine, downloads/extracts it on first run, and launches multiple concurrent browser runs through that single engine connection. We have hit a concurrency limit and would appreciate your guidance.Our setup:
bas-remote-nodeto start the engine and run a compiled script repeatedly with different parameters/profiles.What we observe:
bas-remote-nodeconnection) limit, not a network, proxy, or hardware issue.Our questions:
bas-remote-nodeclient/connection?bas-remote-nodeclients / engine processes on the same machine, or is there an engine/library configuration that supports this safely within a single process/connection?bas-remote-nodeoptions to reduce cold-start time, or to raise the tolerance/timeout of the control channel so it survives bursts of simultaneous launches?Our goal is to run several hundred concurrent Chrome instances per server reliably. Any official recommendation on the right architecture (clients-per-N-browsers, engine tuning, etc.) would be very helpful.
Thank you for your support.