All rights reserved.
11.8 Cause Queues to Be Processed | 435
into the proper order needed for delivery. After it has finished ordering the envelopes,
it launches one or more regular queue runners to perform delivery using that
already processed list. This can significantly reduce the disk I/O compared to that
needed by periodic queue runners.
When the last of the regular queue runners has finished processing (and exited), the
persistent queue runner goes back to sleep for interval.
In general, persistent queue runners are valuable only at sites that normally have
queues that are very full. When a queue is normally near empty, persistent queue
runners can introduce unforeseen delays. Note that a persistent queue runner will
sleep again only when all of its regular queue runners have finished. One regular
queue runner, delivering to a very slow site, can appear to hang, and so can cause the
persistent queue runner to also appear to hang. Subsequent queue runs will be
delayed until the hung site times out, allowing the persistent queue runner to sleep
interval again.
At large sites, suchdelays will eventually smoothout due to the normal distribution
of slow jobs. At small sites, suchdelays might be noticed and objected to. In general,
persistent queue runners should be reserved for sites with full queues.
If interval is omitted, the default interval becomes 1 second:
-qp
When the default interval is used (by omitting the interval), the persistent queue runner
will sleep one second between queue runs, unless the prior queue run was empty,
in which instance it will sleep five seconds.
Pages:
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782