Ask Bjørn Hansen wrote:
On Apr 20, 2009, at 9:10, jan wrote:

i forward the mails via smtp plugin. Now the receiving Mailserver had
some Problems. How can i restart sending for mails in /var/spool/ qpsmtpd?

Hi Jan,

The default SMTP plugin doesn't queue the mails. The sending mail servers should be resending them though.

There's a distinct advantage to _not_ queuing the emails, as long as you react properly to backend fails. If your backend fails, tempfail, and the sender retries.

It means that if the qpsmtpd server blows its disk, you don't have backups of the queue to worry about. We perform no backups whatsoever on our qpsmtpds.

If one of ours blows up, recovery consists of: getting the machine (or a new one) back up, reformat/reclone OS if required, and rsync over a new image of the entire qpsmtpd install (we don't use the default directories, and the image contains _everything_ required, including a specific version of Perl). Then we run a small script to re-establish the cron jobs etc. Done.

Our SMTP plugin is, I think, derived directly from the default one - it "replays" the SMTP conversation to the back-end before issuing the final DATA ack to the sender. The back-end's DATA ack (or nack) is the qpsmtpd's response to the sender. Which could even be a tempfail.

The main changes we've made to our SMTP plugin over the default is the ability to failover amongst multiple backends, and it does simplistic load balancing.

The only time we encounter problems (given multiple backends) is when we have infrastructure hiccups (like all the frontends in a given DMZ have problems with a firewall). But those are returned as tempfails (after all the failovers have been exhausted), and the sender retries - perhaps to a machine not having the problem, or, after the problem is fixed.

Reply via email to