著者: Exim Mailing List 日付: To: exim-users 題目: Re: [exim] Queue_run_max question
On Thu, Nov 20, 2008 at 10:34:55AM -0800, Brent Jones wrote: > I have a small load server (70k deliveries a day) and thought I'd try
> using queue_only, with queue_run_max = 15 to see if it makes things a
> bit more efficient.
Couple of things:
1. Exim only starts a queue runner every nn minutes, where nn is
specified on the "-q" flag on the startup command line of Exim daemon
itself. This is commonly set to "-q15m", but you can certainly lower
it to something lower, such as "-q1m". Just watch the system load
carefully. This is typically set in your /etc/rc2.d startup directory
where Exim daemon is first started.
2. When the "-q" time limit above is reached, it only spawns a single
extra queue runner. Therefore, if you set your daemon to "-q1m",
it could take 15 minutes from restart before all 15 queue runners
are running (per your queue_run_max=15 setting).
3. Remember that queued messages will be skipped if they are pending
a retry due to a previous temporary failure. As a result, sometimes a
queue runner will start and skip over a large number of messages.
That is normal if those messages haven't reached their retry time yet.
4. After a day or so running, you'll likely not see all 15 queue
runners running at same time unless you have a lot of undeliverables
on your queue. The reason is that most messages will not have hit
their retry time yet, and the queue runner will fly through all the
messages and then end. Once a queue runner has run through all the
messages, it quietly ends.
5. Setting queue_only may not help performance much if your box
is already sitting idle most of the time. The most it will do is
delay processing of your message. If your machine isn't heavily loaded
and you don't fear spikes of heavy use, its safe to revert back
to immediate processing of incoming messages. Setting queue_only
does keep the load a bit more consistent though.