Re: nginx cache manager process потребляет CPU в ngx resolver lookup name

Илья Шипицин chipitsine на gmail.com
Ср Сен 20 05:00:22 UTC 2017


привет

мы достаточно успешно запускаем
http://nginx.org/ru/docs/ngx_google_perftools_module.html в продакшене.

заметного оверхеда нет

в результате красивые callgrind-ы

пробовали ?

20 сентября 2017 г., 8:38 пользователь Ilya Evseev <
nginx-forum на forum.nginx.org> написал:

> Дано: nginx 1.13.5 под CentOS 7.3
>
> В perf top:
>
> Children,      Self  Command,          Shared Object,
> Symbol
> -   27,63%     0,00%  nginx            [unknown]                     [.]
> 0000000000000000
>    - 0
>         24,87% ngx_resolver_lookup_name.isra.1
>       - 2,76% __libc_writev
>
> Для ngx_resolver_lookup_name.isra.1 смотрю "Zoom into nginx thread" --
> вижу
> в списке вызывавшихся функций sys_unlink, ngx_http_file_cache_manager и
> т.д.
> Из этого делаю вывод, что функция потребляет процессор внутри процесса
> nginx
> cache manager.
>
> Смотрю в nginx/src/core/ngx_resolver.c -- вижу, что
> ngx_resolver_lookup_name
> делает только поиск по красно-чёрному дереву.
>
> Вопрос: чем хотя бы примерно может быть вызвано такое большое потребление
> процессора этой функцией?
>
> Сервер проксирует ~150 проектов, у каждого свой кэш. Суммарно ~200k файлов
> на SSD. Около 300 upstream server's.
>
> Эффект проявляется только на production под большой нагрузкой, поэтому сбор
> диагностики несколько затруднён. Непонятно, как применить callgrind или
> debug log только к cache manager, не трогая воркеры.
>
> Posted at Nginx Forum: https://forum.nginx.org/read.
> php?21,276455,276455#msg-276455
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru на nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20170920/f1603b64/attachment.html>


Подробная информация о списке рассылки nginx-ru