![AWS Global Accelerator 在已建立的 TCP 连接中扮演什么角色](https://linux22.com/image/794613/AWS%20Global%20Accelerator%20%E5%9C%A8%E5%B7%B2%E5%BB%BA%E7%AB%8B%E7%9A%84%20TCP%20%E8%BF%9E%E6%8E%A5%E4%B8%AD%E6%89%AE%E6%BC%94%E4%BB%80%E4%B9%88%E8%A7%92%E8%89%B2.png)
通过阅读文档,我可以看到 Global Accelerator (GA) 路由到最近的区域,并具有故障转移保护功能,如果一个区域发生故障,它将路由到另一个区域。但是我找不到任何具体回答我的问题的信息。
在我的设置中,GA 将指向两个独立区域 A 和 B 中的 NLB。我们将它们称为 NLB-A 和 NLB-B。这些 NLB 背后是我在 Fargate 实例上运行的后端。后端是 websocket 服务器,因此需要持久的 TCP 连接。
这两个区域完全隔离,没有数据或状态共享,并且需要保持这种状态以提高速度。
假设:
一旦打开 websocket 连接,客户端就会与其中一个 NLB 建立 TCP 连接。假设是 NLB-A。因此,对于已建立的 TCP 连接,NLB-A 的 IP 已解析。
问题:
- 我的假设正确吗?
- 如果是,那么 GA 在 websocket 消息到达 NLB-A 的路由中扮演什么角色(如果有的话)?如果不是,那么消息路由是什么样的?
- 当区域 A 出现故障时,客户端 websocket 会看到什么?