ТуторіалиТуторіали

Туторіали

Покрокове знайомство з TrueAsync: від першої корутини до структурованої конкурентності, пулів ресурсів і справжнього паралелізму. Туторіали побудовані один на одному, тому радимо проходити їх по порядку, починаючи з першого.

0 / 30 пройдено

Основи

01

Корутини

Перше знайомство з корутинами: spawn() і конкурентне виконання.

Читати
02

Скасування

Як працює cancel() і кооперативне скасування корутин.

Читати
03

Await

Навіщо потрібен await() і як він працює з корутинами.

Читати
04

Винятки

Як винятки з корутини пробрасуються через await().

Читати
05

Таймаути

Обмеження часу очікування await() через timeout().

Читати
06

Future

Future і FutureState: обіцянка результату, яка не прив’язана до корутини.

Читати
07

Канали

Channel: потік значень між корутинами, пул воркерів і зворотний тиск.

Читати
08

Scope

Хто володіє корутинами, чекає на їх завершення і скасовує всю групу разом.

Читати
09

PDO Pool

Чому корутинам не можна ділити одне PDO-з’єднання і як вбудований пул вирішує це прозоро.

Читати
10

TaskGroup

Група задач з результатами і стратегії очікування all, race, any.

Читати
11

TaskSet

Потік задач з автоочищенням, joinNext/joinAny/joinAll і цикл супервізора.

Читати
12

Конкурентний ітератор

iterate(): конкурентний обхід колекції одним рядком.

Читати
13

Pool

Async\Pool: універсальний пул ресурсів з healthcheck і circuit breaker.

Читати
14

Потоки

spawn_thread і ThreadPool: справжній паралелізм для обчислень.

Читати
15

Context

Де зберігати «поточне», коли глобальні змінні перестали працювати.

Читати

TrueAsync Server

01

Перший сервер

HTTP-сервер усередині PHP: HttpServer, HttpServerConfig і перший обробник.

Читати
02

Запит і відповідь

HttpRequest і HttpResponse: маршрутизація, json() і помилки через HttpException.

Читати
03

Конкурентність усередині запиту

TaskGroup в обробнику, PDO Pool під навантаженням і request_context().

Читати
04

Потоки байтів

send() і sendable(), потокове читання тіла, завантаження файлів і sendFile().

Читати
05

Статика

StaticHandler: віддача файлів без PHP-корутини, кешування і політики безпеки.

Читати
06

Server-Sent Events

SSE: потік подій у браузер, прогрес імпорту і heartbeat через sseComment().

Читати
07

WebSocket

Цикл recv, чат-кімната, send з інших корутин і trySend проти повільних клієнтів.

Читати
08

Воркери і HTTP/3

setWorkers(): потоки під капотом сервера, bootloader і HTTP/3 на тому ж порту.

Читати
09

Продакшен

Таймаути, ліміти, зворотний тиск на accept, компресія, логи і graceful shutdown.

Читати
10

gRPC

addGrpcHandler(): unary і стримінг, readMessage/writeMessage, трейлери і дедлайни.

Читати

Laravel