gpt4 book ai didi

mysql - 使用 HAProxy 负载保护多数据库 mariadb 集群

转载 作者:行者123 更新时间:2023-11-29 22:03:50 26 4
gpt4 key购买 nike

我有一个设置,多个数据库(每个租户一个)位于同一个 mariadb 服务器(或集群)中。目标是保护 mariadb 免受多个连接的影响,同时也保护每个数据库的多个连接的影响。基本上在数据库级别限制每个租户而不影响其他租户。

示例:tenant1 数据库受到严重打击,连接总数被限制为 10 个。其他连接已排队。同时租户2可以继续正常工作,因为它没有达到任何限制,因此不受队列的影响。

我知道,如果您有一个数据库受到多个应用程序的攻击,HAProxy 会非常有用,因为您可以在 HAProxy 中排队连接,而不必达到数据库中的硬限制并必须在应用程序中处理该限制。

所以问题是,HAProxy 是否可以用作同一集群中多个数据库的前端(可能具有自己的数据库凭据)并允许限制每个数据库的连接。或者您是否需要多个 HAProxy 服务器(每个租户一个)?

最佳答案

另一种方法是设置单独的虚拟机,每个虚拟机都有一个 MySQL 实例。然后通过 CGroup 限制访问。使用这种方法,HAProxy(等)是不相关的,除非您也有一些复制。

CGroups 具有每个 VM 可以获得“至少一定比例”的各种资源(CPU、网络、I/O)的功能。当系统太忙时,该百分比将成为最大值。当其他空闲时,用户可以使用超出其份额的内容。

您已设置VARIABLE max_user_connections

关于mysql - 使用 HAProxy 负载保护多数据库 mariadb 集群,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32360298/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com