Конкурентность в PHP: Асинхронность, многопоточность и параллелизм — Алексей Воронов — обложка книги
300 страниц
PHP
PDF
4.5

Конкурентность в PHP: Асинхронность, многопоточность и параллелизм

От реактивных расширений до Fibers: полное руководство по конкурентному программированию

Автор:

Год:

Краткое содержимое:

Книга «Конкурентность в PHP» — это первое на русском языке практическое руководство, которое комплексно рассматривает все современные подходы к параллельному и асинхронному выполнению кода в PHP. В отличие от большинства материалов, ограничивающихся теорией, автор предлагает пошаговые примеры, готовые к внедрению в реальные проекты.

О чем эта книга?

Вы узнаете, как заставить PHP выполнять несколько задач одновременно, не блокируя основной поток выполнения. Книга охватывает эволюцию конкурентности в PHP: от простых процессов и потоков (pcntl, pthreads) до революционных Fibers (волокон), появившихся в PHP 8.1. Особое внимание уделено практическим аспектам:

  • Многопоточность (pthreads): создание и синхронизация потоков, работа с разделяемыми ресурсами, мьютексы и условные переменные.
  • Асинхронное программирование (ReactPHP, Amp): событийный цикл, неблокирующий ввод/вывод, работа с сокетами и HTTP-запросами.
  • Fibers (PHP 8.1+): легковесные волокна для кооперативной многозадачности, взаимодействие с генераторами и корутинами.
  • Расширение Swoole: корутины, пулы процессов, асинхронные серверы и клиенты.
  • Параллельная обработка данных: распараллеливание тяжелых вычислений, обработка больших массивов и очередей.

Для кого эта книга?

Книга предназначена для PHP-разработчиков уровня Junior+ и Middle, которые хотят выйти за рамки традиционного синхронного выполнения скриптов. Она будет полезна:

  • Backend-разработчикам, создающим высоконагруженные API и веб-сервисы.
  • Специалистам по DevOps, желающим оптимизировать производительность PHP-приложений.
  • Архитекторам, ищущим способы масштабирования без увеличения числа серверов.

Что вы узнаете?

После прочтения вы сможете:

  • Разрабатывать асинхронные HTTP-клиенты и серверы на ReactPHP и Swoole.
  • Использовать Fibers для создания эффективных корутин без сторонних библиотек.
  • Реализовывать паттерн «Producer-Consumer» для обработки очередей.
  • Избегать гонок данных и тупиковых блокировок (deadlocks) в многопоточных приложениях.
  • Интегрировать конкурентность с популярными фреймворками (Laravel, Symfony).

Книга написана живым языком с акцентом на практику. Каждая глава содержит упражнения и примеры кода, которые можно сразу запустить. Это настольное руководство для тех, кто хочет, чтобы PHP работал быстрее, эффективнее и современнее.

Рекомендаций