Autor: Jasen Betts Datum: To: exim-users Betreff: Re: [exim] exim for outgoing notification service
On 2014-09-29, Andy Bennett <andyjpb@???> wrote: > Hi,
>
> Often many of our users are have eMail addresses that are on the same
> domain as each other. However, because the eMails are personalised,
> unlike a mailing list, they are submitted to exim over the course a few
> milliseconds rather than simultaneously. This is long enough for the
> first messages to be routed, begin delivery, complete delivery and close
> the connection. > "421 Too many concurrent SMTP connections; please try again later." > I've Googled around and found two options:
>
> + Queueing mail
>
> + serialize_hosts
basically you have to queue it.
> If I use a queue runner then I'll enforce an expected delivery latency
> of at half the queueing period. It'd be nice if I get it to only queue
> if there has recently been a message delivered to that host. The
> expectation would be that if there is more than one message then more
> are likely to follow. i.e. deliver messages immediately but try harder
> to aggregate messages that arrive in a short interval.
Exim queue delivery doesn't wait for incoming mail.
How about starting a bunch of queue runners after producing the digests.
so queue them all (eg with "exim -odq") and then start several runners,
perhaps one for each domain.
> I can't find much detail on serialize_hosts, especially the implications
> of setting it to '*' or how to reliably set up the DB cleanup jobs.
Serialize hosts can be a bit idiosyncratic, eg: if the primary MX is
busy it may try the secondary. it's best not to rely heavily on it.
> It also seems that use of serialize_hosts leads to a lot of noise in the
> logs about connection limits being reached when messages are submitted
> concurrently.