Обзор

Раздел архитектуры описывает внутреннее устройство ключевых компонентов TrueAsync на уровне C-кода: структуры данных, алгоритмы, интеграцию с Zend Engine и взаимодействие между ядром PHP и async-расширением.

Эти материалы предназначены для разработчиков, которые хотят понять, как работает TrueAsync «под капотом», или планируют создавать собственные расширения.

Zend Async API (C ABI)

Сердце асинхронного ABI, которое позволяет расширениям взаимодействовать с ядром PHP, совершать операции ввода вывода, создавать корутины.

Корутины Scheduler и Reactor

Внутреннее устройство планировщика корутин и реактора событий, включая управление очередями, обработку событий и взаимодействие с ядром.

События и событийная модель, Waker

Базовая структура данных, которая лежит в основе всех асинхронных операций и примитивов. Waker. Механизм пробуждения корутин при наступлении событий.

Асинхронный сборщик мусора

Компоненты

Async\Pool

Универсальный пул ресурсов. Описаны:

PDO Pool

PDO-специфичная надстройка над Async\Pool. Описаны: