Performance degradation using `/chromium/pdf` REST API
Author: uh-zuhCreated May 21, 2026Updated Aug 26, 2026
Describe the bug
There is performance degradation after 10-20 request to /chromium/pdf REST API.
And performance becomes better after approx 1 minute of idle.
To Reproduce
- Set
ENABLE_CORS=truefor reproduction purpose only - Run following code in any browser:
(async () => {
let totalDiffMs = 0;
const steps = 50;
for (let i = 0; i < steps; i++) {
const dateBegin = new Date();
await fetch(
'http://localhost:3000/chromium/pdf',
{
method: 'POST',
headers: { 'Content-type': 'application/json' },
body: JSON.stringify({ html: 'test' }),
},
);
const dateEnd = new Date();
const dateDiffMs = dateEnd.getTime() - dateBegin.getTime();
totalDiffMs += dateDiffMs;
console.log('i: ', i, ', dateDiffMs:', dateDiffMs);
}
console.log('avgDiffMs:', totalDiffMs / steps);
})();- See good performance with first 10-20 requests and performance degradation in console like this:
i: 0 , dateDiffMs: 335
i: 1 , dateDiffMs: 380
i: 2 , dateDiffMs: 483
i: 3 , dateDiffMs: 399
i: 4 , dateDiffMs: 383
i: 5 , dateDiffMs: 342
i: 6 , dateDiffMs: 357
i: 7 , dateDiffMs: 348
i: 8 , dateDiffMs: 334
i: 9 , dateDiffMs: 350
i: 10 , dateDiffMs: 353
i: 11 , dateDiffMs: 330
i: 12 , dateDiffMs: 343
i: 13 , dateDiffMs: 328
i: 14 , dateDiffMs: 344
i: 15 , dateDiffMs: 317
i: 16 , dateDiffMs: 351
i: 17 , dateDiffMs: 369
i: 18 , dateDiffMs: 531
i: 19 , dateDiffMs: 614
i: 20 , dateDiffMs: 616
i: 21 , dateDiffMs: 601
i: 22 , dateDiffMs: 615
i: 23 , dateDiffMs: 633
i: 24 , dateDiffMs: 573
i: 25 , dateDiffMs: 610
i: 26 , dateDiffMs: 601
i: 27 , dateDiffMs: 665
i: 28 , dateDiffMs: 591
i: 29 , dateDiffMs: 569
avgDiffMs: 455.5- Wait 1 minute
- See good performance with first 10-20 requests and performance degradation again
- Repeat 1-2 more times to see that such pattern is repeating
Expected behavior No performance degradation
Version v2.49.0
Source: browserless/browserless