PHP профайлер tideways + xhgui

Введение

Об удобстве использования профайлера, да ещё с графическим интерфейсом и говорить нечего, особенно когда надо найти узкие места под нагрузкой.

tideways — само расширение php для сбора данных о производительности кода

xhgui — графический веб-интерфейс (см. скриншот выше), который, помимо всего прочего, сохраняет данные профилирования в mongodb и затем использует их для вывода статистики

Установка

Нам понадобятся:

  1. Настроенный веб-сервер с fastcgi (в данном примере nginx + php-fpm)
  2. Сервер mongodb
  3. php-mongod
  4. gcc, make, php-devel, чтобы собрать расширение tideways

Читать далее «PHP профайлер tideways + xhgui»

map в nginx

Кейс следующий:

Есть запросы к API с передачей уникального токена в GET параметре. По этому токену (user_token=) имеются лимиты на запросы через limit_req_zone, типа такого:

Необходимо для некоторых токенов отключить лимиты. Тут на помощь и приходит map модуль nginx. Он позволяет динамически получать переменную, значение которой будет зависеть от значений других, входных, переменных. Т.е., грубо говоря, мы имеем function(a, b) { … return c } Читать далее «map в nginx»