什么是http_read_time_out,我应该如何在我的aws lambda客户端创建中设置它,以避免"Seahorse:: client ::NetworkingError: Net::ReadTimeout“?
将http_read_time_out设置为与我们在配置lambda函数时设置的aws lambda函数的超时时间相同是否有意义?
我知道默认超时时间是60秒。
conn = aws_lambda_client.new(
region: region,
access_key_id: account['access_key'],
secret_access_key: account['secret_key'],
session_token: account['session_token'],
)
Can i add something like
http_read_timeout: (function.function_timeout? && function.function_timeout > 60) ? function.function_timeout : 60发布于 2020-02-25 14:07:07
首先,您必须设置lambda函数的超时时间,默认情况下为3秒https://docs.aws.amazon.com/lambda/latest/dg/configuration-console.html
如果你正在执行同步调用,那么你必须将Lambda客户端的read_timeout设置为异步,不应该有阻塞调用。
在Java中的
(SDK v2)您可以通过以下方式完成此操作
https://docs.aws.amazon.com/sdk-for-java/v2/developer-guide/examples-lambda.html
指定自定义HTTP客户端
SdkHttpClient httpClient = ApacheHttpClient.builder().socketTimeout(Duration.ofMinutes(2)).build();
LambdaClient client = LambdaClient.builder()
.region(Region.EU_WEST_1)
.httpClient(httpClient)
.overrideConfiguration(
ClientOverrideConfiguration.builder()
.apiCallTimeout(Duration.ofMinutes(3)).build())
.build();https://stackoverflow.com/questions/57967569
复制相似问题