[[toc]]
AsyncHttpClient
(AHC)是一個高性能、異步的 HTTP 客戶端庫,廣泛用于 Java 和 Scala 應用中,特別適合處理高并發、非阻塞的 HTTP 請求。它基于 Netty 或 Java 原生的異步 HTTP 客戶端實現,支持 HTTP/1.1 和 HTTP/2 協議,適用于微服務、API 調用、爬蟲等場景。
1. 核心特性
特性 | 說明 |
---|---|
異步非阻塞 | 基于事件驅動模型,避免線程阻塞,支持高并發(如每秒數千請求)。 |
HTTP/1.1 和 HTTP/2 | 支持最新的 HTTP 協議標準。 |
連接池管理 | 復用 TCP 連接,減少連接建立的開銷。 |
請求/響應流式處理 | 支持分塊上傳和下載,處理大文件時內存占用低。 |
靈活的配置 | 可定制超時、代理、SSL、重試策略、壓 |