Смотрят memory_get_usage, цикл запросов на одном воркере, static/global кэши, долгоживущие сервисы в PHP-FPM/RoadRunner, профилируют удержанные объекты.
Разбор
- Классический PHP-FPM пересоздаёт состояние чаще; долгоживущие рантаймы опаснее.
- Cirular references + деструкторы.
- Кэши без eviction.
- Лимит memory_limit как предохранитель.
Итог
Утечки ищут по растущим static/кэшам и долгоживущим процессам.