5.3. Частные вопросы
5.3.1. Стратегия очередей SMTP
Общая структура реализации SMTP на хосте включает пользовательские почтовые ящики, одну или несколько областей для организации очередей транзитных сообщений, а также один или несколько процессов-демонов для приема и передачи почты. Точна структура будет зависеть от потребностей пользователей, а также числа и размера поддерживаемых хостом списков рассылок. Здесь рассмотрены вопросы оптимизации, позволяющие повысить эффективность работы почтовых систем (в частности, систем с большим трафиком).
Люба стратеги работы с очередями должна включать:
- время ожидания (тайм-аут) для всех операций (см. 5.3.2).
- невозможность передачи сообщений об ошибке в ответ на сообщения об ошибке.
5.3.1.1. Стратеги передачи
Общая модель передающей стороны SMTP включает один или несколько процессов, периодически пытающихся передать исходящую почту. В типовой системе программы, готовящие почтовые сообщения, используют некий метод запроса немедленных действий для вновь созданного сообщений, однако, почта не может быть отправлена незамедлительно, поэтому новые сообщения должны помещаться в очередь, к которой периодически обращается программа рассылки почты. Элемент почтовой очереди будет включать не только почтовое сообщение, но и связанный с ним конверт.
Отправитель должен задерживать попытки отправить почту по тому или иному адресу после связанной с ним неудачи. В общем случае рекомендуется использовать интервал повтора не менее 30 минут, однако более изощренные и гибкие стратегии с определением причин неудачи являются более предпочтительными.
Попытки продолжаются, пока сообщение не будет передано или отправитель не откажется от дальнейших попыток (обычно отказ происходит через 4-5 дней). Параметры повторов передачи должны быть настраиваемыми.