Class Worker<DataType, ResultType, NameType>

This class represents a worker that is able to process jobs from the queue. As soon as the class is instantiated and a connection to Redis is established it will start processing jobs.

Type Parameters

  • DataType = any

  • ResultType = any

  • NameType extends string = string

Hierarchy

Constructors

Properties

closing: Promise<void>
id: string
keys: KeysMap
name: string

The name of the queue.

Options for the queue.

toKey: ((type: string) => string)

Type declaration

    • (type: string): string
    • Parameters

      • type: string

      Returns string

Accessors

  • set concurrency(concurrency: number): void
  • Parameters

    • concurrency: number

    Returns void

  • get redisVersion(): string
  • Returns the version of the Redis instance the client is connected to,

    Returns string

Methods

  • Closes the worker and related redis connections.

    This method waits for current jobs to finalize before returning.

    Returns

    Promise that resolves when the worker has been closed.

    Parameters

    • force: boolean = false

      Use force boolean parameter if you do not want to wait for current jobs to be processed.

    Returns Promise<void>

  • This function is exposed only for testing purposes.

    Parameters

    • Optional milliseconds: number

    Returns Promise<void>

  • Emits an event. Normally used by subclasses to emit events.

    Returns

    Type Parameters

    Parameters

    • event: U

      The emitted event.

    • Rest ...args: Parameters<WorkerListener<DataType, ResultType, NameType>[U]>

    Returns boolean

  • Returns a promise that resolves to the next job in queue.

    Returns

    a Job or undefined if no job was available in the queue.

    Parameters

    • token: string

      worker token to be assigned to retrieved job

    • __namedParameters: GetNextJobOptions = {}

    Returns Promise<Job<DataType, ResultType, NameType>>

  • Checks if worker is paused.

    Returns

    true if worker is paused, false otherwise.

    Returns boolean

  • Checks if worker is currently running.

    Returns

    true if worker is running, false otherwise.

    Returns boolean

  • Type Parameters

    Parameters

    • eventName: U
    • listener: WorkerListener<DataType, ResultType, NameType>[U]

    Returns Worker<DataType, ResultType, NameType>

  • Type Parameters

    Parameters

    Returns Worker<DataType, ResultType, NameType>

  • Type Parameters

    Parameters

    Returns Worker<DataType, ResultType, NameType>

  • Pauses the processing of this queue only for this worker.

    Parameters

    • Optional doNotWaitActive: boolean

    Returns Promise<void>

  • Parameters

    • job: Job<DataType, ResultType, NameType>
    • token: string
    • fetchNextCallback: (() => boolean) = ...
        • (): boolean
        • Returns boolean

    • jobsInProgress: Set<{
          job: Job<any, any, string>;
          ts: number;
      }>

    Returns Promise<void | Job<DataType, ResultType, NameType>>

  • Overrides the rate limit to be active for the next jobs.

    Parameters

    • expireTimeMs: number

      expire time in ms of this rate limit.

    Returns Promise<void>

  • Resumes processing of this worker (if paused).

    Returns void

  • Manually starts the stalled checker. The check will run once as soon as this method is called, and then every opts.stalledInterval milliseconds until the worker is closed. Note: Normally you do not need to call this method, since the stalled checker is automatically started when the worker starts processing jobs after calling run. However if you want to process the jobs manually you need to call this method to start the stalled checker.

    See

    https://docs.bullmq.io/patterns/manually-fetching-jobs

    Returns Promise<void>

Generated using TypeDoc