Newrelic Impact для запуска кода на python uwsgi

Я пытаюсь профилировать код Python, который запускается сервером uwsgi. Обычный запрос займет 1-2 секунды и будет выполнять различные вызовы базы данных, доступ к данным в redis и memcache, некоторый ввод-вывод и, в конце, возвращать пользователю некоторый ответ JSON.

Каково влияние на сервер при использовании newrelic для мониторинга? Насколько можно замедлить время? Есть ли какой-либо прямой метод измерения этих данных или какое-либо нетривиальное решение?


person gaurav    schedule 19.02.2014    source источник
comment
Я не могу говорить с New Relic, но я был одним из первых счастливых клиентов Tracelytics, и часть смысла подхода, основанного на выборке, заключается в том, что вы не обрабатываете каждый запрос, а процент от них и создать статистический профиль, сохраняя незначительное влияние на производительность.   -  person Charles Duffy    schedule 19.02.2014
comment
В любом случае - в большинстве случаев вы не будете привязаны к ЦП на своих серверах приложений, а накладные расходы на измерения почти полностью связаны с ЦП, поэтому накладные расходы на измерения, как правило, не конфликтуют с вашими узкими местами.   -  person Charles Duffy    schedule 19.02.2014
comment
Тем не менее, ваше приложение может столкнуться с крайним случаем, когда влияние измеримо даже при небольшом коэффициенте выборки, поэтому я не знаю, может ли кто-либо здесь дать вам гарантии, которым можно доверять применительно к приложению, которое мы никогда не видел.   -  person Charles Duffy    schedule 19.02.2014


Ответы (1)


Влияние немного зависит от вашей конкретной инфраструктуры, но в конечном итоге оно зависит от того, сколько инструментальных узлов встречается для запроса. Один из разработчиков агента New Relic обратился к этой теме здесь: -dj">Попытка количественно оценить накладные расходы производительности на мониторинг NewRelic в приложении Python django

person alice    schedule 20.02.2014