тюнинг ext3 и nginx под отдачу мелких файлов

топ 100 блогов ru_highload15.09.2010

Привет, коллеги!

Несколько дней пытаюсь решить проблему с повысившимся LA на сервере.

Имею DELL R510 с 6х2ТБ дисками в рейд50. Контроллер H700 с 512мб и батарейкой. 2 Quad с включенным HT.
Включен writeback и adaptive read ahead. размер страйпа 64кб.

Картинок на машине под 50млн штук в размере от 5-100кб. Последнее время наблюдают повышение LA из за повышения активности юзеров. Картинки на сервер пишутся постоянно, но это число не сравнить с чтением, которое намного превышает запись.

Перед сервером стоит CDN, поэтому определение наиболее популярных картинок и их кеширование - отпадает.
CDN чистит менее популярные картинки (по заходам/время) и вот эти новые реквесты  снова попадают на сервер.
Т.е. идут полностью рандомальные запросы на картинки.

Диск изначально я не форматировал, беря во внимание stride, да и не уверен, что это сильно увеличит производительност. Тем более морочиться с временным переводом сервиса куда-то из за формата диска тоже не хочется особо. Гемор еще тот. 
 
Разумеется, что основные настройки произвел, типа монтирование с noatime, data=writeback и даже увеличил время коммита в журнал.  Не могу сказать что writeback и коммит сильно помогли. только noatime.

с schedulers играл, но deadline/cfq дают примерно тоже самое, а остальные только выносят мозг системе.
с настройками в /sys/block/sdb/queue тоже игрался (read_ahead / nr_requests) , но особо ничего не изменилось.

Диск как загружен на все 100%, так и имеется, тут-там выигрыш небольшой по LA, но это все может быть списано на активность юзеров в тот или иной момент.

в nginx тоже особо не тюнил, дифолтные настройки работают прекрасно и все остальное ничего не дает.
worker_processes  16;
worker_rlimit_nofile 8192;

events {
    worker_connections 4096;
    use epoll;
}

    sendfile        on;
    tcp_nopush     off;
    tcp_nodelay        on;
    keepalive_timeout  5;

    output_buffers 2 64k;

Логи пишутся на отдельный партишен.

В общем, очень надеюсь, что я не исчерпал всего и можно таки улучшить быстродействие системы, хотя, у меня смутное подозрение, что ничего не выйдет.

Собираемся поднимать похожий проект и на этот раз уже поставлю RAID10 из 8 дисков, это уж точно должно дать то, что нужно. Ну и stride попробую, хуже не будет.

LA в тихие часы около 2х, а в пике работы уходит в 8-9.

Буду благодарен за любую помощь!

Оставить комментарий

Архив записей в блогах:
Дом Ярчевского В.И, 1897 год Это два одинаковых дома рядом, Аксакова 49, просто разные арендаторы и поэтому по-разному покрашены. Были. Снесены в 2009 году. Памятники ...
Сегодня международный день кофе! Кофе- это мое спасение с утра. После первой кружки просыпаемся, а потом можно и позавтракать. Покажу вам два своих завтрака с кофе. Вчера, когда я с утра уехала гулять ...
Доброе утро!Хотела немного пошутить на тему бешенной популярности Лимочелло в ...
Зайко. Английский учит :) ...
Для тех, кому мало моих постов о кино и театре в ЖЖ и хочется еще. "Кольберг" (Kolberg), или Самый дорогой фильм III Рейха https://dzen.ru/media/catherine_catty/kolberg-kolberg-ili-samyi-dorogoi-film-iii-reiha-6405b328976ffe173b4e2452 "Метель", или Как в СССР экранизировали ...