升级版 SDK 将 Request 中的业务参数和这种运行时参数分开设置避免用户混淆,所以超时的设置新版 SDK 的超时机制为 RuntimeOption -> Client 设置 -> 默认,优先级依次降低;默认未设置超时时间,如果您的服务在网络环境不稳定的情况,请主动配置超时时间避免出现阻塞:
use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
use AlibabaCloud\SDK\Ecs\V20140526\Ecs;
use AlibabaCloud\SDK\Ecs\V20140526\Ecs\Models\DescribeRegionsRequest;
// Client 超时参数设置
$config = new Config([]);
$config->connectTimeout = $connectionTimeoutMillis;
$config->readTimeout = $readTimeoutMillis;
// 运行时参数超时设置,仅对使用了该运行时参数实例的请求有效
$runtimeOptions = new RuntimeOptions();
$runtimeOptions->connectTimeout = $connectionTimeoutMillis;
$runtimeOptions->readTimeout = $readTimeoutMillis;
$request = new DescribeRegionsRequest();
$client = new Ecs($config);
$client->describeRegionsWithOptions($request, $runtimeOptions)