<virtual-mta>
Сколько получателей адрес отправки берётся обслужить за интервал — суммарно, по всем приёмникам сразу. В счёт идут и доставленные письма, и просто попытки: временный отказ приёмника тратит лимит наравне с принятым письмом.
Считает адрес, а не очередь, — и в этом всё отличие. Соседняя по смыслу max-msg-rate живёт в блоке приёмника и действует на одну очередь: 500/h при десяти приёмниках — это пять тысяч писем в час с адреса, а не пятьсот. Здесь наоборот: 500/h означает пятьсот, сколько бы приёмников ни было. Если нужен потолок на адрес как таковой, другого способа его задать нет.
Как выглядит срабатывание. Веб-монитор пишет message rate limit reached (based on max-smtp-msg-rate in configuration) — по тексту сразу видно, какая именно директива придержала отправку, а похожих в этой семье пять. Письма при этом не отказываются и не теряются: лимит растягивает отправку во времени, а не обрезает её.
Руководство советует сперва померить. Совет там дан прямо: снять базовый уровень без ограничения и убедиться, что лимит улучшает доставляемость, а не просто замедляет отправку. Он не лишний — приёмник видит только свою долю потока, и потолок на весь адрес помогает не всегда: он к месту, когда адрес молодой или когда с одного узла шлёт несколько отправителей, и бесполезен, когда упирается не адрес, а конкретная очередь.
Если ставите руками, держите в голове, что 1/h в блоке приёмника и 1/h здесь — разные величины: первая умножается на число приёмников, вторая нет.
Сначала базовый уровень, потом лимит. Это не наша присказка, а прямая рекомендация руководства: пока неизвестно, сколько адрес отправляет без ограничения, любое число окажется либо недостижимым, либо тормозящим без пользы.
Как считать. Возьмите суточный объём, который планируете с этого адреса, и разложите на окно отправки, а не на сутки: три тысячи писем с восьми утра до восьми вечера — это 250/h, а не 125/h. Число здесь ни на что не умножается, поэтому считать проще, чем темп очереди.
Знаменатель принимает множитель. N/[M]единица: 100/15m — сто писем за пятнадцать минут, 83/5s — восемьдесят три за пять секунд. Множитель появился в PowerMTA 5; на более ранних доступно только 100/m. Полезен, когда естественное окно не ложится на минуту или час.
Про 0. Синтаксис допускает его отдельным значением, но что именно он делает, руководство не поясняет — по грамматике это нулевой темп, то есть остановка отправки с адреса. Пробовать стоит на стенде, а не на боевом адресе.
# два лимита в одном блоке — они про разное <virtual-mta mta-news-1> smtp-source-host 1.2.3.4 news1.example.com max-smtp-msg-rate 3000/h <domain *> max-msg-rate 500/h </domain> </virtual-mta>
что делают не так и чем это кончается3 ошибки▶
§ 3.3.12.2
§ 3.3.13
§ 3.3.12.2
2 связи
pmta show vmta-settings mta-news-1 pmta show vmtas
3 статьи
◇Четыре способа сказать «медленнее»Письма, объём данных, темп подключений и число соединений — у каждого свой лимит, и у каждого есть вариант «на адрес источника» и двойник для щадящего режима.◇Очередь — это приёмник вместе с адресом отправкиMTA группирует письма по паре «домен получателя плюс адрес отправки»: один домен с двух адресов — это две независимые очереди со своими счётчиками, соединениями и режимом.◇Три правила пула, названные руководством прямоРаздача по кругу, наследование настроек участниками с перекрытием у самого участника и общее с адресами отправки пространство имён.