Я использую RDS от Amazon и настроил конфигурацию MySQL на максимум. Однако все сайты перестанут подключаться к MySQL, когда количество подключений достигнет определенного числа действий. Это внутренняя сетевая настройка, без ограничения пропускной способности и 128 ГБ ОЗУ 32-ядерный экземпляр Windows Server 2019 Datacenter ECS.
Ниже приведены мои MPM, Httpd.conf и PHP.ini. Может ли это быть вызвано следующей конфигурацией?
**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
Все вызовы из одного экземпляра, общий файл php, инициирующий соединение с БД. Около 20 соединений, общих для 20 сайтов, открытие 200 страниц одновременно. БД отклонит соединение. Ниже приведена настройка RDS innodb_io_capacity 18446744073709551615 innodb_io_capacity_max 4294967295 innodb_read_io_threads 64 innodb_write_io_threads 64
Один экземпляр RDS с 20 экземплярами БД.
PHP-код, используемый для инициализации экземпляра БД для глобального использования на сайте.
$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");