Понедельник, 1 Декабрь 2008

nginx: тестирование аллокаторов

В пятницу я сделал патч для nginx. Сейчас я буду показывать более детальные результаты его использования.

С стандартным аллокатором после загрузки потребление памяти у master процесса 36 mb, у worker 33. Под нагрузкой 33-35 mb. idle был на уровне 44%-47%.

С obsd_malloc после загрузки потребление памяти у master процесса 20 mb, у worker 19. Под нагрузкой 19-20 mb. idle был на уровне 50%-52%.

С jemalloc после загрузки потребление памяти у master процесса 20 mb, у worker 19. Под нагрузкой 20-21 mb. idle был на уровне 48%-50%.

Выводы делать не буду, но я начинаю пристально смотреть на obsd-like ;)

Да, для измерений я использовал top, а для генерации нагрузки ab.

Написано в: 0:59 | 4 комментария | | теги: , , , | постоянная ссылка |
Добавить пост в:   Delicious Reddit Slashdot Digg Technorati Google


Последние комментарии

Комментарии

Alrond 30.12.2008 20:23

Интересный тест я провел аллокаторов и is_bot с 382тыс.строк(тот самый, от которого виртуальная память вырастает до 1.5 гига) подробнее потом в блоге у себя опишу, но вкратце так:

с обычным аллокактором и гео-базой процессы по 36-37МБ, с этими двумя в районе 7.5-8, скорость отдачи ответов даже возрасла на 2-3%, но потребление процессорного времени тоже возросло 4-5%, что я думаю приемлемая расплата за возросшую скорость и уменьшение потребления памяти в 4-5 раз :)

ответить
Kirill A. Korinskiy 30.12.2008 21:31

учитывай, что is_bot, в отличии от geo, хранит свои данные в shared memory между процесами.

ответить
Alrond 30.12.2008 21:49

в любом случае твоя переделка аллокатора избавляет от проблемы удвоения памяти при HUP для большой гео-базы ;)

ответить
Kirill A. Korinskiy 31.12.2008 8:44

geo base тоже можно, и ловко, класть в shm память.

ответить

Форма комментирования для «nginx: тестирование аллокаторов»

Обязательное поле. Не больше 30 символов.

Обязательное поле