Warp、HTTP クライアントの reqwest は hyper をベ ースに実装されている. hyper is a relatively low-level library, meant to be a building block for libraries and applications. 古い hyper は tower サービスを実装していたが新しいバージョンではシンプルさを優先して 実装していない.
and cloning is the recommended way to share a Client . 内部の Pool は Arc<Mutex<_>> で囲まれている. pub(super) struct Pool<T> { // If the pool is disabled, this is None. inner: Option<Arc<Mutex<PoolInner<T>>>>, } ref: https://github.com/hyperium/hyper/blob/a22c5122e1d2d58e3f30d059978c3eed14cca0 82/src/client/pool.rs#L19