Привет. Сервер sendmail (clamav, spamassassin) на Linux. Почтовый поток в день: rejected + viruses + spam = 2 млн. сообщений, send + received = 100 тыс. сообщений. Пиковое кол-во процессов sendmail около 700, одновременно установленных smtp соединений 600 (плюс около 1500 локальных сокетов для clamav-milter и spamass-milter). Почтовая очередь в среднем 100 писем. Процессор, память и дисковая подсистема незагружены. ОС на базовом уровне оптимизирована. В часы пиковой нагрузки (часов пять в день) время отклика sendmail доходит до 50 сек.В чем может быть узкое место, ограничевающее производительность?
Например ширина канала.
ДНС сервера тоже смотреть...
>Привет. Сервер sendmail (clamav, spamassassin) на Linux. Почтовый поток в день: rejected
>+ viruses + spam = 2 млн. сообщений, send + received
>= 100 тыс. сообщений. Пиковое кол-во процессов sendmail около 700, одновременно
>установленных smtp соединений 600 (плюс около 1500 локальных сокетов для clamav-milter
>и spamass-milter). Почтовая очередь в среднем 100 писем. Процессор, память и
>дисковая подсистема незагружены. ОС на базовом уровне оптимизирована. В часы пиковой
>нагрузки (часов пять в день) время отклика sendmail доходит до 50
>сек.
>
>В чем может быть узкое место, ограничевающее производительность?вот статейку почитайте
>Например ширина канала.Ширина канала ограничена провайдером до 6 Мбит/с, я же измеряю время отклика через 100 Мбит/с интерфейс.
>ДНС сервера тоже смотреть...
Кеширующий DNS стоит локально, работает, да и врятли сендмыло делает днс запросы между началом соединения и выдачей приветствия удаленной стороне, а именно здесь у меня и возникает большая задержка.
>вот статейку почитайте
>https://www.opennet.ru/openforum/vsluhforumID1/18181.htmlПозновательно, но бесполезно
Может быть дело в количестве одновременных подключений, может быть ограничения накладываются системой, например, незнаю, драйвером сетевой карты...
>[оверквотинг удален]
>
>Ширина канала ограничена провайдером до 6 Мбит/с, я же измеряю время отклика
>через 100 Мбит/с интерфейс.
>
>>ДНС сервера тоже смотреть...
>
>Кеширующий DNS стоит локально, работает, да и врятли сендмыло делает днс запросы
>между началом соединения и выдачей приветствия удаленной стороне, а именно здесь
>у меня и возникает большая задержка.
>Чем обосновано "да и врядли" - как раз таки может делать запросы, чтобы определить имя айпишника.
>>вот статейку почитайте
>>https://www.opennet.ru/openforum/vsluhforumID1/18181.html
>
>Позновательно, но бесполезно
>
>Может быть дело в количестве одновременных подключений, может быть ограничения накладываются системой,
>например, незнаю, драйвером сетевой карты...
>Пиковое кол-во процессов sendmail около 700, одновременно установленных
>smtp соединений 600 (плюс около 1500 локальных сокетов для clamav-milter
>и spamass-milter)..
>Процессор, память и дисковая подсистема незагружены.То есть "всё это" помещается в ОЗУ и не "выпадает" в своп?
>В часы пиковой нагрузки (часов пять в день) время отклика sendmail доходит до 50
>сек.Очень похоже, что форк sendmail-а вызывает своп (насколько я ничего не понимаю в sendmail-e)... _В_этот_ момент что со свопом и памятью на сервере?
>В чем может быть узкое место, ограничевающее производительность?
>
>То есть "всё это" помещается в ОЗУ и не "выпадает" в своп?
>Очень похоже, что форк sendmail-а вызывает своп (насколько я ничего не понимаю в sendmail-e)... _В_этот_ момент что со свопом и памятью на сервере?Своп полностью свободен, ничего в него не выгружается. Память на 30% занята системой и процессами sendmail'а, оставшаяся часть занята файловым кешем (cache 50%) и buffers (10%). Что-то не дает sendmail'у порождать большее количество дочерних процессов, вот только что?
При этом в sendmail.cf:
O MaxDaemonChildren=5000
O ConnectionRateThrottle=150