Воркшоп для PHP розробників від Дмитра Науменка. Воркшоп буде проведений російською мовою.
Ми всі працюємо над захоплюючими продуктами, дбаємо про архітектуру, але іноді забуваємо про швидкодію. Що більший проект, тим більше проблем зі швидкодією приховано за тисячами рядків коду в різних шарах абстракції. Це все робить пошук “вузьких місць” і їх виправлення справжнім болем. Хіба що ви знаєте, як профілювати код! Цей воркшоп — глибоке занурення у світ профілювання PHP додатків. Ми дізнаємося, як працюють профайлери і як їх використовувати, встановимо додаток з підготовленими помилками, що стають частими причинами уповільнення та дізнаємося, що 15-кратий ріст швидкодії через виправлення в одному рядку — це реальність!
Цей воркшоп — глибоке занурення у світ профілювання PHP додатків. Ми почнемо з розмови про те, що таке профілювання, які проблеми воно вирішує, як насправді працює, і які інструменти профілювання ми взагалі маємо в PHP. Далі ми встановимо Blackfire на ноутбуки учасників, і будемо готові до боротьби з повільними додатками.
Основна частина цього воркшопу полягає в отриманні практичного досвіду профілювання, тому для учаснків підготовлено зразок проекту з різними “вузькими місцями”, прихованими глибоко у коді. Спочатку розберемося зі зразком: ознайомимося з Blackfire, його інструментами і можливостями, навчимося будувати дерева викликів і шукати в них корінь проблеми, порівнювати показники швидкодії до і після змін.
Ми обговоримо різні пастки профілювання, які можуть навести вас на хибний шлях, та навчимося трюкам профілювання на ряді практичних прикладів, які охоплюють різні, але найпоширеніші помилки, які призводять до проблем зі швидкодією. Нарешті, ми спробуємо застосувати способи постійного контролю швидкості роботи додатку у довгостроковій перспективі, шляхом написання тестів на продуктивність. Наприкінці дня ви матимете глибоке розуміння та практичний досвід профілювання, готовий до застосування на ваших проектах у реальному житті.
Для участі у воркшопі Вам знадобиться ноутбук з підготовленим середовищем розробки, яка включає в себе: