Пятница, 28 Ноябрь 2008

nginx: другой аллокатор

Работая, пришлось подменить аллокатор для nginx. Результат понравился мне (измерения все делались top’ом).

Наш nginx при загрузки потреблял 36 мегабайт памяти на master процесс и 33 на каждый worker. При работе ab idle был около 40%, и потребление памяти около 40 мегабайт на каждый worker процесс (их было 4, на машине 4 ядра).

После применения патча потребление стало около 19 мегабайт на master и 18 на worker. idle поднялся до ~55%, потребление памяти во время нагрузки стало около 22 мегабайт.

Да, разница в request/sec осталась в пределе 5%.

Я не утверждаю что это поможет всем, но нам, как видите, помогло ☺

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


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

Комментарии

kas 29.11.2008 0:11

Прежде чем изобретать велосипед, почитайте info mallopt.

ответить
Kirill A. Korinskiy 29.11.2008 12:32

И что я должен там был найти?

ответить
kas 2.12.2008 18:25

Поставьте M_MMAP_THRESHOLD поменьше и фрагментация значительно уменьшиться. Это по-сути будет работать как openbsd-malloc.

ответить
Kirill A. Korinskiy 2.12.2008 19:06

спасибо.

Пока плользя от openbsd-malloc в том что я в него буду по чуть-чуть руками лазить ;)

ответить

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

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

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