Previous | Contents | Index |
The Job Controller creates and manages channel jobs for delivering messages. Each set of channel jobs is part of an internal queue. The queue provides an area where a set of channel jobs can run without contention for resources with other channel jobs outside of the queue. The number of jobs that can run inside a particular queue is set with the JOB_LIMIT
keyword. For example, if you have a CONV
queue defined with a JOB_LIMIT
of 10, then only 10 processes can run in that queue at any given time.
Usage of the conversion
channel for virus scanning or stripping "dangerous" attached files is a common situation where sites would want to create additional queues. Virus scanning a message requires a significant amount of time, and conversion
channel jobs can quickly fill every available job slot at a busy site. Delivery channel jobs such as the l
(local) and msgstore
channels are only allowed to run infrequently, causing large delays in
message delivery.
A solution to this problem is to define a queue named CONV
in the Job Controller configuration file (job_controller.cnf
) that is dedicated to handling conversion channel jobs:
[QUEUE=CONV] JOB_LIMIT=10 |
The conversion
channel is told to run its channel jobs inside the new queue with the queue
keyword. For example:
[CHANNEL=conversion] master_command=/pmdf/bin/conversion queue=conv |
This allows up to 10 conversion
channel jobs to run in parallel, while leaving all of the job slots in
the other queues available for other channel jobs.
Previous | Next | Contents | Index |