すべてのプロダクト
Search
ドキュメントセンター

Alibaba Cloud SDK:HTTP 接続プールの構成

最終更新日:Jan 15, 2025

このトピックでは、Alibaba Cloud SDK V1.0 で HTTP 接続プールを構成する方法について説明します。

SDK V1.0 で SDK クライアントを初期化するときに、HttpClientConfig を使用して HTTP 接続プールを構成できます。1 つの SDK クライアントしか使用できないため、HTTP 接続プールは、複数の Alibaba Cloud サービスの SDK から開始された API リクエストを処理します。

import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.http.HttpClientConfig;
import com.aliyuncs.profile.DefaultProfile;
import com.google.gson.Gson;
public class Sample {
    public static void main(String[] args) {
        // DefaultAcsClient インスタンスを作成し、インスタンスを初期化します。
        DefaultProfile profile = DefaultProfile.getProfile(
                // リージョンの ID。
                "<region-id>",
                // 環境変数から Resource Access Management (RAM) ユーザーの AccessKey ID を取得します。
                System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"),
                // 環境変数から RAM ユーザーの AccessKey シークレットを取得します。
                System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));

        /* 複数の SDK クライアントによって使用される HTTP 接続プールの parameters です。たとえば、各ホストの最大接続数とタイムアウト期間を構成できます。 */
        HttpClientConfig clientConfig = HttpClientConfig.getDefault();
        clientConfig.setMaxRequestsPerHost(6);
        // 単位:ミリ秒。
        clientConfig.setConnectionTimeoutMillis(30000L);
        clientConfig.setMaxIdleConnections(20);

        profile.setHttpClientConfig(clientConfig);
        IAcsClient client = new DefaultAcsClient(profile);
    }
}