我想为大量查询请求扩展 mariadb 数据库

I want to scale mariadb database for huge number of query requests

我在 centos7 上使用 Moodle 和 Php、Mariadb、Nginx。有大量用户使用此 Moodle。如果用户数量增长超过每秒 300 个用户,则 Moodle 响应延迟并且似乎被挂起!

我读到:

立即处理大量请求的最佳做法是什么?我如何扩展我的数据库(因为它是瓶颈)?我想扩展它以满足巨大的请求(其中大部分是来自数据库的 read

显然,您可以先进行通用 MySQL/MariaDB 调整,然后使用最新版本的 Moodle(目前为 3.7)

之后,您可以检查的一件事是如何实现会话。

https://docs.moodle.org/37/en/Session_handling

此页面还有更多提示:

https://docs.moodle.org/37/en/Performance_recommendations

MariaDB(和 MySQL)可以通过使用复制并将读取请求发送到从属服务器来扩展 'infinitely' 读取。

500 每秒连接数 非常高。 (但我不知道实际限制是多少。)

有几个额外的工具可以做到 "connection pooling"。搜索这个;它可能会让您在单个服务器上超过 500 个 逻辑 连接。

在 Galera 的情况下,您可以有 3 个读写节点,加上任意数量的从节点挂在这 3 个节点上。

对于简单的Master-Slave,可以有任意数量的Slave挂在一个Master上。