Готовый перевод Mastering Swoole PHP: Build High Performance Concurrent System with Async and Coroutines / Осваиваем Swoole PHP: построение высокопроизводительной конкурентной системы с асинхронностью и корутинами: Жизненный цикл переменной
Жизненный цикл переменной
Разные типы переменных имеют разный жизненный цикл.
В отличие от локальных переменных, создавамых внутри функции, которые уничтожаются PHP VM, когда функция завершается, глобальные переменные и статические переменные по умолчанию не уничтожаются. Если мы будем продолжать сохранять данные в глобальные переменные или продолжать создавать новые глобальные переменные в процессе, мы увидим, что использование памяти продолжает расти.
Когда мы создаем приложения с отслеживанием состояния, очень важно управлять жизненным циклом глобальных переменных. Без уничтожения и удаления неиспользуемых глобальных переменных мы можем увидеть утечки памяти: использование памяти может продолжать расти. При преобразовании приложений PHP-FPM без сохранения состояния в приложения с сохранением состоянием, такие как Swoole, возникают дополнительные накладные расходы.
Хорошей практикой является думать о жизненном цикле каждой созданной нами переменной и делать их очистку, когда они нам больше не нужны.
Внимание! Этот перевод, возможно, ещё не готов.
Его статус: идёт перевод
Переведено на Нотабеноиде
http://notabenoid.org/book/81342/496699
Переводчики: bubenok
Настройки
Готово:
