【发布时间】:2021-06-07 08:36:56
【问题描述】:
我有一个通用要求,就像任何其他大型应用程序一样,我希望我的亚洲用户以最低的延迟(最快的速度)访问我在美国地区托管的网站,目前,它并没有这样做。
以下是我的基础架构:
-
应用服务器:4 核 + 16 GB RAM,(最大 CPU 使用率为 15-20%
天)。 -
一个数据库服务器 + 1 个只读副本:4 核 + 32 GB RAM(两者)(一天内最大 CPU 使用率为 15-20%)。带有 MYSQL 的 AWS Aurora 数据库
使用此基础架构,我面临延迟(速度)问题,我的互联网连接非常好且稳定。
为了解决这个问题,我在亚洲地区配置了一个应用服务器,并配置了地理位置路由以将用户从亚洲重定向到这个服务器,但是问题出现在 DB,现在我不想使用新的 DB,我想要使用我现有的数据库,我可以在亚洲创建副本,但这些副本不提供写入功能,并且由于我收到的延迟和性能,将我的亚洲应用服务器连接到美国数据库服务器根本没用。
我已探索在亚洲地区创建另一个数据库实例并开始连续复制,但由于应用程序的性质,复制滞后是不可接受的。
我对架构的变化很好,但我想知道 Facebook、Zoom、Jira 甚至 StackOverflow 等大型应用程序如何以几乎没有延迟的方式管理全球用户。
【问题讨论】:
标签: database database-design architecture scaling globalization