[sisyphus] Корпоративный почтовый сервер из коробки
Dmitry Lebkov
=?iso-8859-1?q?dima_=CE=C1_sakhalin=2Eru?=
Пт Фев 21 09:24:05 MSK 2003
On Fri, 21 Feb 2003 06:55:11 +0300
"Albert R. Valiev" <darkstar на altlinux.ru> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> В сообщении от 21 Февраль 2003 02:43 Dmitry Lebkov написал:
> Хотелось бы узнать подробности о конфигурации твоего почтового
> сервера:
> >
> > - железо (CPU/RAM/(SCSI or IDE) HDD etc.)
>
> Amd Durun 800 Mhz
> ram: 128
> hdd-ide: 10Gb
>
> это небольшой сервачок и на нем нет ничего кроме биллинга и почты
> :)
>
>
> > сколько mailbox'ов "держит" сервер
> 25.
>
> > MySQL живет на этом же хосте или нет
> да.
> > среднее кол-во сообщений в минуту
> от 0 до 300 :) зависит от времени суток :) когда начинается поток
>
>
> > - какие проверки производятся в MySQL при обработке сообщения
>
> здесь все просто - при приходе сообщения (неважно, на отправку
> или в mailbox) сначала идет проверка - какие домены обслуживает
> данных хост. после чего если была аутенфикация, (что тоже
> обращение в MySQL) то без проблем отправляем иначе если письмо в
> наши домены, то кладем в mailbox. т.е. 2-4 обращения к базе за
> одно письмо.
>
> > - LoadAverage сервера
> практически не загружен.
>
> > - результаты тестов с помощью postal (если это возможно).
> невохможно
> > Если все, вышеперечисленное, не является секретом. ;)
> :)))
>
> понимаю, данная нагрузка очень смешна, однако я использовал MySQL
> и в гораздо более жестоких условиях. и падал он у меня только
> один раз - когда была проблема с 3.23.51 и tcp/ip соединениями.
>
> к тому же я уже сказал - ничего не мешает релизовать обе схемы.
> :)
Спасибо за инфо. ;) Наверное, мы просто по разному понимаем
словосочетание "корпоративный почтовый сервер" ... ;)
Теперь расскажу свою страшную сказку ... %)
Все тестировалось на одном и том же железе. 50 почтовых ящиков
в формате mailbox для первого пункта и maildrop - для всего остального.
Серверу отдавались сообщения размером от 1 до 8 кб. Все FS - ext2.
Intel PIII-866, 256Mb RAM, 18Gb Ultra16 SCSI HDD.
1. Sendmail+procmail(mailbox) = 30 msg/min - после этого предела
почта валилась в spool. "Слабое звено" :) -- procmail и mailbox-формат.
Пока ящики получателей были пустые - скорость была раза в два больше.
Но по мере заполнения скорость снизилась до вышеуказанного значения.
2. Sendmail(with MySQL)+maildrop(mysql, maildir) ~= 200-250 msg/min.
Два запроса в MySQL: 1) maildrop ищет пользователя, 2) sendmail смотрит
в аналог access.db. Загрузка системы поднималась до 80-85%. Основной
пожиратель ресурсов - MySQL. При увеличении кол-ва проверок (до 6-7)
скорость падала до 60-90 msg/min. LoadAverage оставалась достаточно
высокой -- около 80%. "Слабое звено" -- связка sendmail+mysql.
3. Sendmail(with LDAP)+maildrop(LDAP, maildir) ~= 600-700 msg/min.
на двух запросах и около 500 на всех нужных мне проверках (6 или 7
запросов). LA ~= 40-50%. "Слабое звено" -- maildrop и disk I/O.
При тестировании всего этого дела никаких особых настроек не делалось.
Минимальная правка конфигов -- только чтоб заработало. Наверное, при
минимальном тюнинге можно было бы и превысить достигнутые поаказатели,
но для наших нужд джостигнутого хватило с запасом.
Сейчас такой сервер обслуживает около 2000 ящиков в двух виртуальных
доменах, там же живет DrWeb-даемон. Этот же сервер - secondary MX для
нескольких клиентских доменов. Средняя загрузка ~ 10-15 msg/min.
Работает уже полтора года и проработает еще как минимум столько же %)
Вот такие пироги с котятами ... %)
--
WBR, Dmitry Lebkov
Подробная информация о списке рассылки Sisyphus