8、WSGI 和 ASGI
一、WSGI 和 ASGI 的核心区别
1. 同步 vs 异步
-
WSGI(Web Server Gateway Interface)
- 同步接口:基于线程或进程处理请求,每个请求按顺序执行,前一个请求完成后再处理下一个。
- 适用场景:传统同步 Web 应用,如低并发场景、IO 密集型任务(如数据库查询)。
-
ASGI(Asynchronous Server Gateway Interface)
- 异步接口:基于事件循环和协程(如
async/await),支持同时处理多个请求,无需等待前一个请求完成。 - 适用场景:高并发场景、实时应用(如 WebSocket、长连接、聊天应用)、HTTP/2 等协议。
- 异步接口:基于事件循环和协程(如
...About 3 min