Programação Reativa e Assíncrona
TL;DR
Galho 8 da trilha Python: o “além do fundamentals” de
asyncio— o event loop por dentro (selectors, callbacks, a relação real entreFutureeTask), streams assíncronos de rede,aiohttpcomo cliente e servidor de produção, o protocolo ASGI que sustenta frameworks como FastAPI/Starlette, back-pressure, e os padrões de produção (supervisão de tasks, graceful shutdown, circuit breaker assíncrono) que fecham num capstone de web scraper concorrente. Fase Magus; 8 notas. Assume o Galho 7 (Concorrência e paralelismo) como pré-requisito — event loop/coroutines/Task/gather/TaskGroup/cancelamento já foram explicados lá; aqui o assunto é rede, produção e o ecossistema em volta do asyncio.
Sobre este galho
O Galho 7 ensinou o vocabulário básico do asyncio — como escrever e orquestrar coroutines. Este galho assume esse vocabulário como dado e vai pro que você realmente faz com asyncio em produção: falar com a rede (streams, aiohttp), construir servidores assíncronos de verdade (ASGI), controlar quanto trabalho concorrente seu sistema aguenta (back-pressure), e manter isso rodando de forma resiliente (supervisão, graceful shutdown, circuit breaker).
Audiência: quem já escreve async def/await/TaskGroup com confiança (Galho 7) e precisa colocar isso pra falar com o mundo real — APIs, scrapers, integrações — sem travar o event loop ou saturar o sistema.
Magus
- [[01 - Event loop por dentro — selectors, callbacks e a relação Future-Task|01 — Event loop por dentro: selectors, callbacks e a relação
Future/Task]] - [[02 - Streams assíncronos — StreamReader, StreamWriter e protocolos de rede|02 — Streams assíncronos:
StreamReader,StreamWritere protocolos de rede]] - [[03 - aiohttp cliente — ClientSession, connection pooling e requisições concorrentes|03 —
aiohttpcliente:ClientSession, connection pooling e requisições concorrentes]] - [[04 - aiohttp servidor — web.Application, routing e middlewares|04 —
aiohttpservidor:web.Application, routing e middlewares]] - 05 — ASGI e o ecossistema de frameworks assíncronos
- [[06 - Back-pressure — Semaphore, Queue com maxsize e buffering|06 — Back-pressure:
Semaphore,Queuecommaxsizee buffering]] - [[07 - Padrões de produção com asyncio — supervisão de tasks, graceful shutdown, circuit breaker|07 — Padrões de produção com
asyncio: supervisão de tasks, graceful shutdown, circuit breaker]] - 08 — Capstone: web scraper assíncrono de produção — recapitula o galho.
Todas as notas
TABLE fase, status FROM "03-Dominios/Tecnologia/Python/Programação Reativa e Assíncrona" WHERE type = "concept" SORT file.name ASCVeja também
- Trilha Python (MOC central)
- Concorrência e paralelismo — Galho 7 (pré-requisito; fundamentals de asyncio moram lá, não repetidos aqui)
- Web e APIs REST — Galho 10 (próximo na trilha; FastAPI/Django/Flask em profundidade — aqui só o protocolo ASGI que os sustenta)