HTTP İstemci Ömrü (ARCH3083)
Anahtar typescript.performance.http-client-lifetime · Önem error · Kategori performance
Her istek için yeni bir HTTP istemcisi/agent oluşturmak bağlantı havuzlamasını engeller ve TIME_WAIT’te birikerek soket tükenmesine neden olur. İstemci paylaşılan bir singleton olmalıdır.
Hatalı
Bölüm başlığı “Hatalı”async function fetchUser(id: string): Promise<User> { const agent = new https.Agent({ keepAlive: true }); const res = await fetch(`/users/${id}`, { agent }); return res.json();}const sharedAgent = new https.Agent({ keepAlive: true });
async function fetchUser(id: string): Promise<User> { const res = await fetch(`/users/${id}`, { agent: sharedAgent }); return res.json();}Düzeltme
Bölüm başlığı “Düzeltme”HTTP istemcisini/agent’ını bir kez oluşturup paylaşılan singleton olarak yeniden kullanın.