Накладні витрати, пов’язані з продуктивністю

Результати тестів продуктивності та рекомендації щодо мінімізації накладних витрат під час використання OpenTelemetry PHP Distro.

На цій сторінці описано вплив використання OpenTelemetry PHP Distro на продуктивність та наведено рекомендації щодо мінімізації накладних витрат.

Як і будь-який агент інструментування, цей дистрибутив працює в процесах застосунків і збільшує витрати ресурсів під час виконання. Точний вплив залежить від архітектури, конфігурації, середовища розгортання та робочого навантаження.

У наведеному нижче тесті порівнюються різні варіанти моніторингу PHP у локальній конфігурації Docker (PHP-FPM 8.2 + NGINX). У сценаріях із використанням колектора останній також працює локально та використовує ресурси процесора хосту.

Налаштування бенчмарку

  • Застосунок: Laravel/Aimeos на PHP-FPM 8.2
  • Середовище: локальний Docker з NGINX
  • Призначення телеметрії: точки доступу, сумісні з OTLP

Результати

ВаріантСередній час на запит [ms]Накладні витрати [ms]
Без агента17.360.00
Вендор-специфічний APM агент20.633.27
OpenTelemetry PHP Distro23.085.71
OpenTelemetry PHP Distro + локальний колектор24.377.01
Vanilla OpenTelemetry PHP + protobuf (C extension) + колектор25.768.40
Vanilla OpenTelemetry PHP чистий-PHP protobuf експорт + колектор49.0231.66
Vanilla OpenTelemetry PHP чистий-PHP protobuf експорт2158.582141.22

Ключові висновки

  • OpenTelemetry PHP Distro значно зменшує накладні витрати порівняно з vanilla OpenTelemetry PHP з чистим-PHP protobuf експортом.
  • Розміщення локального колектора може збільшити накладні витрати, коли він конкурує за CPU з PHP workers.
  • Чистий-PHP protobuf експорт у vanilla OpenTelemetry PHP вводить дуже високі накладні витрати у цьому бенчмарку.

Рекомендації

  • Оцініть накладні витрати у вашому робочому навантаженні та інфраструктурі.
  • Надавайте перевагу OTLP HTTP/protobuf з асинхронним транспортом.
  • Уникайте розміщення ресурсоємних робочих навантажень колекторів разом із робочими процесами застосунків, чутливими до затримок.
  • Налаштуйте параметри вибірки та експортера відповідно до ваших SLO.

Востаннє змінено July 12, 2026: [uk] Ukrainian documentation for OpenTelemetry (83a19542)