将 EC2 实例迁移到私有子网并通过 NAT 网关路由互联网流量后,对公共第三方数据库执行的长时间运行的数据库查询在数据库端 7 分钟后完成,但客户端从未收到响应。工程师应进行哪项配置更改来解决此问题?
选择一个答案
点击一个选项来检查您的答案。
正确答案: 在客户端 EC2 实例上启用 TCP keepalive,其值小于 300 秒。.
为什么这是答案
NAT 网关的 TCP 空闲超时限制为 350 秒。如果连接在此期间没有活动,NAT 网关会关闭连接。尽管数据库查询在 7 分钟(420 秒)后完成,但由于 NAT 网关的空闲超时,客户端 EC2 实例与数据库之间的连接已断开,导致客户端无法收到响应。在客户端 EC2 实例上启用 TCP keepalive 并将其值设置为小于 350 秒(例如 300 秒),可以确保在 NAT 网关超时之前发送 keepalive 探测包,从而保持连接活跃。 将 NAT 网关超时配置为 600 秒是无效的,因为 NAT 网关的 TCP 空闲超时是固定的 350 秒,用户无法更改。在客户端 EC2 实例上启用增强联网与解决连接超时问题无关。通过 NAT 网关关闭空闲 TCP 连接是 NAT 网关的默认行为,不是解决方案,而是问题的原因。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡