Quando há muitas conexões simultâneas com o MySQL, todos os sites Apache-PHP não conseguem se conectar ao banco de dados

Quando há muitas conexões simultâneas com o MySQL, todos os sites Apache-PHP não conseguem se conectar ao banco de dados

Estou usando o RDS da Amazon e ajustei a configuração do MySQL ao máximo. Porém, todo o site deixará de se conectar ao MySQL quando o número de conexões atingir um determinado número de atividades. É configuração de rede interna, sem limite de largura de banda e 128 GB de RAM, instância do Windows Server 2019 Datacenter ECS de 32 núcleos.

A seguir estão meus MPM, Httpd.conf e PHP.ini. Isso pode estar causando a configuração a seguir?

**MPM ConfigurationX**
<IfModule mpm_winnt_module>
    ThreadLimit       2000000
    ThreadsPerChild   2000000
    MaxConnectionsPerChild 0
    MaxRequestsPerChild    0
</IfModule>

**HTTPD2.4 Configuration**
KeepAliveTimeout 180
MaxKeepAliveRequests 10000
Timeout 3200
FcgidMaxRequestLen 51200000
<IfModule mpm_winnt_module>
    MaxConnectionsPerChild 10000000
    ThreadsPerChild 1920
</IfModule>

**PHP7.0 Configuration**
max_execution_time = 1800
max_input_time = 60
memory_limit = 65536M

Todas chamando da mesma instância, compartilhando o mesmo arquivo php iniciando a conexão com o banco de dados. Aproximadamente 20 conexões compartilhadas por 20 sites, abrindo 200 páginas ao mesmo tempo. O banco de dados recusará a conexão. A seguir está a configuração do RDS innodb_io_capacity 18446744073709551615 innodb_io_capacity_max 4294967295 innodb_read_io_threads 64 innodb_write_io_threads 64

Instância única do RDS com 20 instâncias de banco de dados.

Código PHP usado para iniciar a instância de banco de dados para uso global do site.

$db1 = new MySQLi("mysql.abc.com","testing","abc#123","testing",3306);
$db1->query("set names utf8");
unset($db2);
$db2 = new MySQLi("mysql.abc.com","testing","abc#123","testing",3306);
$db2->query("set names utf8");

informação relacionada