> уточню - есть система, прищедшая по наследству, основная задача которой > - почта, > количество пользователей - порядка 20 тысяч, сколько из них активных не > знаю, может 6-7 тыс. > свои проблемы со скоростью винтов (20-30 мегабайт в секунду, даже с > кэшем) я уже выкладывал в соседней ветке. > из-за не совсем грамотной настройки - письма не сразу отвергаются при > ошибках во время SMTP сессии (не тот юзер, переполнен ящик), а сначала > получаются а потом отлупливаются обратно. Load Average поднимается до > 1000-1500 проц в большинстве своем занят iowait. после установки > валидации пользователей - ситуация улучшилась, но бэкап периодически > грузит машину, если в это время есть приличное количество писем на > отправку - то висит куча процессов ожидающих ответа от дисковой системы.
А вот бэкап надо реорганизовывать или "размазывать" во времени. Например, rsync имеет опцию --bwlimit=KBPS limit I/O bandwidth; KBytes per second Может быть, это то, что вам нужно? Запросы, которые не могут быть обработаны, стоит сразу "отбивать" (это верно для системы любого типа), это верно как с точки зрения безопасности, так и с точки зрения производительности (именно в таком порядке). > Попутно пара вопросов - в текущей системе стоит reiserfs V3.6, я же > привык работать с ext3, так как кажется она мне более надежной и > удобной. Как вы думаете - стоит ли оставаться на reieser и, если да, > стоит ли переезжать на 4-ю версию ? Почта хранится в maildir - при > обращении к ящику с большим количеством сообщений система притормаживает. Выбираю ext3 за ее надежность; reiserfs имеет иные настройки по умолчанию, потому часто рекомендуется для соответствующих задач, но чтение манов по ext3 позволит настроить как минимум не хуже. Для начала на ext3 отключите atime, diratime и включите индекс директорий. После этого сможете эффективно работать с десятками и сотнями тысяч файлов в директории (тестировал и с миллионом файлов, но это на практике пока не потребовалось). Есть и другие полезные опции, но мне хватает вышеназванных. Имхо, рейзер нестабильная ФС с непонятной поддержкой и на свой сервер я ее никогда не поставлю (да и зачем - ощутимых преимуществ не вижу). Еще для вашей задачи стоит попробовать опцию data=journal (в /etc/fstab использовать нельзя, надо указывать как параметр загрузки), для конкурентного ввода-вывода может оказаться очень полезной. P.S. Утилита rm отвратительно работают с большим числом файлов в директории. Я пишу свои скрипты на tcl, которые выполняют то же самое на несколько порядков быстрее. В то же время ls работает нормально, не знаю, в чем проблема. На примере миллиона файлов: rm /test_1000000/* думает часами и зверски насилует винт, в то время как на тикле foreach fn [glob /test_1000000/*] {file delete $fn} работает две-три минуты и почти не шелестит винтом. Посмотрите, может, и у вас где подобные грабли закопаны.