AWS 负载均衡器后面的数据库?

AWS 负载均衡器后面的数据库?

我在前面放了一个负载均衡器example.com,我相信所有的流量都会*.example.com流向负载均衡器

我的数据库名为db.example.com5432,正在监听

应用程序负载平衡器仅有 80 和 443 端口设置。

如何将db.example.com流量引导至监听 5432 的 ec2 实例?

  • 编辑

我有一个数据库,我不需要负载平衡数据库,只需要达到它。

答案1

我假设数据库只能由应用服务器访问,并且是幕后操作。应用服务器可以直接连接到数据库服务器,无需通过负载平衡器。您有多少个数据库服务器 - 单个还是多个?

答案2

通常,您无法使用简单的基于连接的负载平衡器对数据库进行负载平衡,并且没有额外的设计。如果您尝试这样做,您的写入将转到随机数据库,并且它们将不同步。如果您的数据库设置了同步,也许它可以工作,但它需要适当的思考和设计,而不是仅仅在数据库前面放置一个负载平衡器。您没有描述这方面的任何设计,所以我认为它没有被考虑过。

据我所知(我不是数据库专家),最好的选择是:

  • 具有读取副本的关系数据库服务。您的写入全部发送到主服务器,而您的读取可以手动分发到从服务器。

  • 使用数据库原生功能。我不确定您是否可以使用 RDS 来实现这一点。Oracle 在这方面具有良好的功能,但价格不菲。

请注意,RDS 多可用区不是为了扩展,而是为了可靠性。

我快速搜索了一下,发现你可以使用HAProxy或者代理SQL对于 MySQL。

相关内容