exq v0.13.2 API Reference

Modules

Exq

Interface for retrieving Exq stats. Pid is currently Exq.Api process

The Api deals with getting current stats for the UI / API

Enqueuer

The Enqueuer is responsible for enqueueing jobs into Redis. It can either be called directly by the client, or instantiated as a standalone process

The Manager module is the main orchestrator for the system

Pipeline is a structure that is used as an argument in functions of module with Exq.Middleware.Behaviour behaviour. This structure must be returned by particular function to be used in the next middleware based on defined middleware chain

Middleware Server is responsible for storing middleware chain that is evaluated when performing particular job. Middleware chain defaults to Stats, Job and Manager middlewares

The Connection module encapsulates interaction with a live Redis connection or pool

The JobQueue module is the main abstraction of a job queue on top of Redis

The JobStat module encapsulates storing system-wide stats on top of Redis It aims to be compatible with the Sidekiq stats format

The Scheduler is responsible for monitoring the schedule and retry queues. These queues use a Redis sorted set (term?) to schedule and pick off due jobs. Once a job is at or past it's execution date, the Scheduler moves the job into the live execution queue

Stats process is responsible for recording all stats into Redis

Serializable Job format used by Exq

This module defines several modes in which Exq can be used. These modes are

Struct for in progress worker

Provides storage functionality for job metadata. The metadata is associated with the worker pid and automatically discarded when the worker process exits

Worker process is responsible for the parsing and execution of a Job. It then broadcasts results to Stats / Manager

The WorkerDrainer server is responsible for gracefully draining workers when the application is shutting down. When shutdown starts it instructs the Manager to stop accepting new jobs and then waits for all currently in progress jobs to complete

Mix Tasks