Типи профілювання
- CPU profiling — яка функція займає найбільше часу виконання
- Memory profiling — що споживає найбільше пам'яті, де витоки
- I/O profiling — повільні SQL-запити, мережеві виклики
Інструменти
- PHP: Xdebug + KCacheGrind, Blackfire, Tideways
- Node.js: Chrome DevTools CPU профайлер, clinic.js
- Python: cProfile, py-spy, memory_profiler
80/20 правило
Зазвичай 20% коду займає 80% часу виконання. Профайлер покаже ці 20%. Найчастіше вузьким місцем виявляється не PHP-код, а SQL-запити без індексів.