[Pkg-exim4-users] Throttle or limit deliveries to smarthost? (one solution)

Dave Price kinaole at gmail.com
Tue Mar 20 14:29:50 CET 2007

This appears to work for me ...

- I am running a monolithis /etc/exim4/exim4.conf ... ported from exim3
- I use a single smart_host for nonlocal deliveries
- I occasionally send batches of 1000+ emails to a distribution list,
and want to prevent flooding of my small internet connection and/or my
smart_host smtp server

# load limit
# +------------------------------------------------+
# |queue_run_max|Use: main|Type: integer|Default: 5|
# +------------------------------------------------+
# This controls the maximum number of queue runner processes that an Exim daemon
# can run simultaneously. This does not mean that it starts them all
at once, but
# rather that if the maximum number are still running when the time comes to
# start another one, it refrains from starting another one. This can happen with
# very large queues and/or very sluggish deliveries. This option does not,
# however, interlock with other processes, so additional queue runners can be
# started by other means, or by killing and restarting the daemon.
# Setting this option to zero does not suppress queue runs; rather, it disables
# the limit, allowing any number of simultaneous queue runner processes to be
# run. If you do not want queue runs to occur, omit the -qxx setting on the
# daemon's command line.
queue_run_max = 1

#|remote_max_parallel|Use: main|Type: integer|Default: 2|
#This option controls parallel delivery of one message to a number of remote
#hosts. If the value is less than 2, parallel delivery is disabled, and Exim
#does all the remote deliveries for a message one by one. Otherwise, if a single
#message has to be delivered to more than one remote host, or if several copies
#have to be sent to the same remote host, up to remote_max_parallel deliveries
#are done simultaneously. If more than remote_max_parallel deliveries are
#required, the maximum number of processes are started, and as each one
#finishes, another is begun. The order of starting processes is the same as if
#sequential delivery were being done, and can be controlled by the
#remote_sort_domains option. If parallel delivery takes place while running with
#debugging turned on, the debugging output from each delivery process is tagged
#with its process id.
#This option controls only the maximum number of parallel deliveries for one
#message in one Exim delivery process. Because Exim has no central queue
#manager, there is no way of controlling the total number of simultaneous
#deliveries if the configuration allows a delivery attempt as soon as a message
#is received.
#If you want to control the total number of deliveries on the system, you need
#to set the queue_only option. This ensures that all incoming messages are added
#to the queue without starting a delivery process. Then set up an Exim daemon to
#start queue runner processes at appropriate intervals (probably fairly often,
#for example, every minute), and limit the total number of queue runners by
#setting the queue_run_max parameter. Because each queue runner delivers only
#one message at a time, the maximum number of deliveries that can then take
#place at once is queue_run_max multiplied by remote_max_parallel.
remote_max_parallel = 1

... The comments are from spec.txt - thank you!!!


On 3/20/07, mark david mcCreary <mdm at internet-tools.com> wrote:
> Those are good questions, but I'm not advanced enough to know the
> answers.
> I will keep watching the list and hope that somebody else does.
> mark

More information about the Pkg-exim4-users mailing list