问题描述
我发现 Google Load Balancer 的 TCP 空闲超时是 600 秒,我想尝试确认一下。
我使用以下命令进行测试,预计在等待连接关闭后大约 600 秒得到结果。
time telnet {LB IP} 80
事实上,我得到了这个结果。
Trying xx.xx.xx.xx...
Connected to xx.xx.xx.xx
Escape character is '^]'.
Connection closed by foreign host.
real 4m0.015s
user 0m0.003s
sys 0m0.001s
大约是 4 分钟,而不是 600 秒。
有什么问题吗?有关如何测试 TCP 空闲超时值的任何建议?
谢谢!
解决方法
TCP 会话超时值固定为 10 分钟(600 秒),其值无法通过修改后端服务进行配置。
我建议您配置后端使用的 Web 服务器软件,使其保持活动超时超过 600 秒,以防止后端过早关闭连接。此超时不适用于 websocket。
我运行了相同的命令,对我来说也是 4 分钟。
欲了解更多信息,请访问链接 [1]。
@instance-1:~$ time telnet [LB IP] 80
正在尝试 LB IP...
连接到 LB IP。
转义字符是'^]'。
连接被外部主机关闭。
真正的 4m0.017s
用户 0m0.002s
系统 0m0.000s
[1] https://cloud.google.com/load-balancing/docs/https#timeouts_and_retries