来自不同应用程序的AWS Gateway + Lambda的冷启动。
我试图通过从另一个lambda(并行10个线程)中访问api网关来保持lambda容器的温暖。这有助于lambda的后续调用。
现在,当我从和android应用调用时(使用上述lambda进行预热后)。第一个呼叫的冷启动仍需要5秒钟。随后的通话又很快了。
我的期望是,如果我同时击打(针对多个容器)容器并充分加热,则所有应用程序都不会出现冷启动。
这种期望有效吗?还是lambda为不同的应用程序提供了不同的容器?
答案 0 :(得分:0)
问题不是aws lambda冷启动,而是Android中的Retrofit第一次调用花费的时间太长。这是因为DNS解析花费的时间太长。
下面是为什么要打“ https://google.com”的堆栈跟踪记录:
REQUEST 1 (new connection)
0.000 callStart
0.007 dnsStart
5.048 dnsEnd
5.049 connectStart
5.056 secureConnectStart
5.106 secureConnectEnd
5.108 connectEnd
5.109 connectionAcquired
5.110 requestHeadersStart
5.112 requestHeadersEnd
5.196 responseHeadersEnd
5.197 responseBodyStart
REQUEST 1 (new connection) end success