Я понимаю, что это может быть лучше подходит для StackOverflow.com, однако, поскольку я не очень большой разработчик, я беспокоюсь, что эти ответы могут быть слишком ориентированы на разработчиков. Хотя, я бы хотел, чтобы некоторые подробности были, где это возможно, и в упрощенной версии.
Я хочу понять, что делает почтовый сервер более быстрым или способным обрабатывать большие очереди. Например, qmail хвастался своей невероятной скоростью, однако я недавно столкнулся с коммерческими почтовыми серверами, которые значительно превосходят qmail в том, что касается обработки количества писем (например, размер очереди 50 000+ не имеет большого значения) и соответствуют ему по скорости. (Извините, я не хочу называть имена)
Что я знаю на данный момент (поправьте меня, если я ошибаюсь):
Скорость:
Протокол SMTP можно использовать для отправки нескольких электронных писем в одном и том же сетевом соединении, что позволяет сэкономить время при установке и разрыве соединений через сокеты. Они также будут группировать электронные письма для определенного домена вместе и отправлять их по одному и тому же соединению.
Многопоточные доставки
Размеры очереди:
Использование системы на основе epoll / событий вместо простой многопоточности также может сделать почтовый сервер более эффективным [подумайте о разнице между традиционной установкой apache и nginx].
если вы готовы рискнуть надежностью своего сервера, вы можете избежать использования fsyncing при записи в каталог спула или разместить его на ramdisk. если вы вменяемы и ответственны - пойдете в рейд с кешем с батарейным питанием.
если ваш почтовый сервер имеет нетривиальную логику маршрутизации / политики - вы можете подумать о [предварительной] компиляции вместо интерпретации правил для каждого из сообщений.