Go での HTTP 接続の再利用: 完全ガイド
HTTP 接続の再利用は、パフォーマンスを最適化し、サーバーの負荷を軽減するために重要です。 Go では、接続の再利用は自動ではないため、これを実現するにはトランスポートとクライアントを正しく構成することが重要です。
問題: 複数の同時接続
HTTP POST を実行するときデフォルトのトランスポートとクライアントを使用してリクエストを実行すると、リクエストごとに新しい接続が作成されることに気づくかもしれません。これにより、多数の同時接続が発生し、非効率になり、パフォーマンスの問題が発生する可能性があります。
解決策: 応答の完了と終了を確認します
接続を再利用するには、応答が完全に読み取られ、本文が閉じられていることを確認する必要があります。これにより、接続が再利用可能であることがトランスポートに通知されます。正しいアプローチは次のとおりです:
res, _ := client.Do(req) _, err := ioutil.ReadAll(res.Body) if err != nil { // Handle error }
res.Body.Close()
キーポイント
以上がGo で HTTP 接続を効率的に再利用してパフォーマンスを向上するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。