Global Rate Limit

The global rate limit config is a queue option that determines how many jobs are allowed to be processed in a specific period of time.

import { Queue } from 'bullmq';

// 1 job per second
await queue.setGlobalRateLimit(1, 1000);

In order to get these values:

const { max, duration } = await queue.getGlobalRateLimit();

And in order to get current ttl:

const ttl = await queue.getRateLimitTtl();

Note that if you choose a rate limit level in your workers, it won't override the global one.

Remove Global Rate Limit

It can be done using the following method:

await queue.removeGlobalRateLimit();

Read more:

Last updated

Was this helpful?