超時(shí)機(jī)制
更新時(shí)間:
本節(jié)主要介紹升級(jí)版 SDK 的超時(shí)機(jī)制。
V2.0 SDK 實(shí)現(xiàn)了對(duì)請(qǐng)求參數(shù)的精細(xì)化管理,通過將業(yè)務(wù)邏輯參數(shù)與運(yùn)行時(shí)配置參數(shù)明確劃分,有效降低了用戶在配置過程中的混淆可能性。在超時(shí)配置上,V2.0 SDK 的超時(shí)機(jī)制為 RuntimeOption -> Client 設(shè)置 -> 默認(rèn),優(yōu)先級(jí)依次降低。默認(rèn)連接超時(shí)為5秒,讀超時(shí)為10秒:
import com.aliyun.ecs20140526.models.DescribeRegionsRequest;
import com.aliyun.teautil.models.RuntimeOptions;
public class Sample {
public static void main(String[] args) throws Exception {
com.aliyun.credentials.Client credentialClient = new com.aliyun.credentials.Client();
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config();
// 使用Credentials配置憑證。
config.setCredential(credentialClient);
config.setRegionId("<regionId>");
// Client 超時(shí)參數(shù)設(shè)置
// 連接超時(shí)默認(rèn) 5 * 1000 毫秒
config.setConnectTimeout(5000);
// 讀超時(shí)默認(rèn) 10 * 1000 毫秒
config.setReadTimeout(10000);
com.aliyun.ecs20140526.Client client = new com.aliyun.ecs20140526.Client(config);
// 運(yùn)行時(shí)參數(shù)超時(shí)設(shè)置,僅對(duì)使用了該運(yùn)行時(shí)參數(shù)實(shí)例的請(qǐng)求有效
RuntimeOptions runtimeOptions = new RuntimeOptions();
runtimeOptions.connectTimeout = 5000;
runtimeOptions.readTimeout = 10000;
DescribeRegionsRequest describeRegionsRequest = new DescribeRegionsRequest();
client.describeRegionsWithOptions(describeRegionsRequest, runtimeOptions);
}
}
文檔內(nèi)容是否對(duì)您有幫助?