mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-05-11 18:10:15 +08:00
为 AsyncRequestUtils 增加 http2: bool = True 参数(默认开启), 内部贯穿到 _get_shared_async_transport 与 path C 兜底 AsyncClient。 http2 加入共享 AsyncHTTPTransport 桶 key,让不同 h2 设置自动隔离。 启用基于 TLS ALPN:服务端宣告支持 h2 时切到 HTTP/2 多路复用; 不支持(含明文 HTTP、老 nginx/Apache)透明回落 HTTP/1.1。如个别 站点 h2 实现异常,调用方传 http2=False 单独关闭。 依赖:httpx extras 由 [socks] 扩展为 [socks,http2],引入纯 Python 包 h2 / hpack / hyperframe(无原生扩展)。 真实 TMDB 压测(30 部美剧 × 每部 50 集 = 3060 请求/版本): HTTP/1.1 52.0s → HTTP/2 27.6s,节省 24.4s(1.88×)。 单请求 p95 由 96.1ms 降至 20.1ms,长尾大幅收敛。 公共 API 表面零变动;插件可按需 http2=False 单点关闭。
1.7 KiB
1.7 KiB