Topik ini menjelaskan cara mengonfigurasi periode timeout jaringan di Alibaba Cloud SDK V1.0.
Catatan
Setiap operasi API memiliki objek permintaan unik. Objek permintaan diberi nama dalam format ${API}${Request}. Sebagai contoh, sebuah objek permintaan dapat berupa DescribeRegionRequest.
Periode timeout yang dikonfigurasi di SDK V1.0 efektif dalam urutan prioritas berikut: periode timeout yang ditentukan untuk objek permintaan, periode timeout yang ditentukan untuk klien SDK, dan periode timeout default. Periode timeout default untuk permintaan koneksi adalah 5 detik, sedangkan periode timeout default untuk permintaan baca adalah 10 detik.
public static void main(String[] args) {
// Periode timeout yang Anda tentukan saat menginisialisasi klien SDK digunakan untuk semua permintaan.
HttpClientConfig clientConfig = HttpClientConfig.getDefault();
// Periode timeout default untuk permintaan baca adalah 10.000 milidetik. Nilai tersebut dihitung menggunakan rumus: 10 × 1.000 = 10.000.
clientConfig.setReadTimeoutMillis(readTimeoutMillis);
// Periode timeout default untuk permintaan koneksi adalah 5.000 milidetik. Nilai tersebut dihitung menggunakan rumus: 5 × 1.000 = 5.000.
clientConfig.setConnectionTimeoutMillis(connectionTimeoutMillis);
IClientProfile profile = DefaultProfile.getProfile(regionId, accesskeyId, accesskeySecret);
profile.setHttpClientConfig(clientConfig);
DefaultAcsClient client = new DefaultAcsClient(profile);
// Periode timeout yang Anda tentukan untuk objek permintaan hanya digunakan untuk permintaan saat ini.
request.setSysReadTimeout(readTimeoutMillis);
request.setSysConnectTimeout(connectionTimeoutMillis);
}