--- id: python.asyncio.index title: asyncio 异步编程 type: index domain: python stack: [asyncio] tags: [asyncio, 协程, 并发, 超时] week: [4, 5, 12] --- # asyncio 异步编程 AI 应用的大部分时间在“等”:等模型生成、等检索、等数据库。asyncio 让一个进程同时等很多件事。你熟悉 JS 的 `async/await` 和 Promise,概念几乎可以直接迁移;不同点在于 Python **需要显式运行事件循环**、**同步阻塞调用会卡住整个循环**、以及任务取消和超时的写法。 ## 学习路线 | 顺序 | 课程 | 级别 | 预计 | | --- | --- | --- | --- | | 1 | [协程、任务和事件循环:和 JS Promise 对照](01-coroutines-tasks.md) | 基础 | 2 小时 | | 2 | [并发控制:gather / TaskGroup、Semaphore、超时、取消、阻塞调用](02-concurrency-control.md) | 进阶 | 3 小时 | ## 企业场景 - [并发调用多个模型和外部接口:限并发、超时、重试、部分失败](scenarios/concurrent-llm-calls.md) ## 面试题 - [asyncio 面试题](interview.md) ## 示例代码 - [examples/fanout](examples/fanout/):并发上限、单次超时、指数退避重试、部分失败、整体截止时间取消,附 6 个测试,只用标准库 ## 在 16 周计划中 - [第 4 周:Python 速成(asyncio 是重点)](../../../plan/week04-python.md)、[第 5 周:RAG 服务](../../../plan/week05-rag-1.md)、[第 12 周:Agent 持久化](../../../plan/week12-agent-m3-persistence.md) ## 官方资料 - asyncio 文档(中文):https://docs.python.org/zh-cn/3/library/asyncio.html - 协程与任务:https://docs.python.org/zh-cn/3/library/asyncio-task.html