TGViewer
Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter @phpproglib · 10.5K subscribers
Post #4877 3.06K
Высокочастотные метрики в PHP с TCP-сокетами

Здесь описывается решение для высокочастотного логирования в среде с большим количеством запросов на сервере, использующем PHP. В статье объясняется, как отслеживать метрики производительности, такие как API и запросы к базе данных, с минимальным влиянием на работу системы.

Структура логирования: Приводится стандартизированная запись логов, где указывается название метрики, тип, значение и продолжительность выполнения.

Примеры логирования:

🔸API-запросы.
🔸SQL-запросы.
🔸Логирование файла и строки вызова через debug_backtrace.

Логирование через TCP сокет:
Предпочтительно отправлять логи напрямую в агрегатор через TCP-сокет, а не сохранять их. Используется формат NDJSON для передачи данных, а метрики агрегируются с помощью инструментов, таких как Prometheus.

Минимизация нагрузки: Описаны методы минимизации влияния логирования на систему:

✔️Логирование должно потреблять минимальные ресурсы (RAM, CPU, диск, сеть).
✔️Логирование можно включать/выключать без перезагрузки сервера.
✔️Логирование должно корректно работать даже в случае недоступности сервера для логов.

Метод обработки трех возможных состояний TCP-порта: Порт может быть открыт, закрыт или заблокирован брандмауэром, и система должна обрабатывать эти случаи без блокировки приложения.
  • 👍 2
  • ❤ 1
More from @phpproglib
  1. Oct 2, 2026🎹 Что делать после ChatGPT? Следующий шаг — AI-агенты. Они не просто отвечают на запросы,…
  2. Sep 30, 2026🔥 Последний день для разработчиков AI уже пишет код. Теперь важнее научиться встраивать е…
  3. Sep 30, 2026🐸 Библиотека пхпшника
  4. Sep 29, 2026💡 Laravel-фича, которая спасает тесты от случайных запросов Http::preventStrayRequests()…
  5. Sep 28, 2026🔐 ramsey/uuid — UUID без самописного кода Библиотека помогает генерировать, парсить и вал…
  6. Sep 28, 2026🤔 Что выведет код? ❤️ — 1 🔥 — 2 👍 — 12 👾 — Fatal error 👇 Правильный ответ (нажми, что…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →