Я добавил новый медленный транспорт в свою конфигурацию Postfix, но это не работает. Сообщения передаются правильно в медленном транспорте, но их скорость не ограничена.
В настоящее время я настраиваю это в своем master.cf:
slow unix - - n - 1 smtp
-o default_destination_concurrency_limit=1
-o initial_destination_concurrency=1
-o smtp_destination_concurrency_limit=1
-o in_flow_delay=2s
-o syslog_name=slow
Есть идеи, почему мои сообщения не ограничены по скорости?
Конфигурация, которая у вас есть сейчас, только гарантирует, что у вас будет только одна одновременная доставка в каждый пункт назначения. На самом деле он ничего не дросселирует. Думаю добавить эту строчку в main.cf
можете выполнить то, что вы хотите:
slow_destination_rate_delay=2s
Это сообщит диспетчеру очередей о необходимости вставки указанной задержки между каждой отдельной доставкой в одно и то же место назначения. Поскольку вы не изменили default_destination_recipient_limit
по умолчанию он должен применять задержку к каждому домену получателя. Таким образом, это должно требовать 2-секундной задержки между каждой доставкой в домен, указанный на транспортной карте.
Когда мне приходилось делать это в прошлом, я не использовал альтернативный транспортный механизм. Поскольку меня интересовала только скорость доставки в каждый уникальный домен, я просто добавил эти строки в main.cf
:
smtp_destination_concurrency_limit = 1
smtp_destination_rate_delay = 1s
Таким образом, если вводится почта для 30 разных доменов, он может попытаться доставить сообщение всем 30 из них одновременно, но не более чем по одному за раз. example.com
и никогда не быстрее, чем 1 раз в секунду, чтобы example.com
.