Если MySQL отбрасывает подключения в приложении PHP, а ограничение количества подключений MySQL установлено выше числа одновременных пользователей в приложении, какие другие факторы могут способствовать такому поведению? Кроме того, анализируя журналы Moodle (единственное приложение, работающее на этих серверах), вчера у меня было в 4 раза больше активности, и он ничего не сбрасывал, но сегодня были времена, когда это расстраивало количество разорванных соединений.
Мой главный вопрос здесь заключается в том, почему база данных отклоняет соединения, когда она этого не делала раньше, с активностью в 4 раза больше (и все то же самое, я ничего не менял между ними).
Краткая справка: у меня на хостинге работают 2 сервера:
- общий сервер под управлением Debian Linux / PHP 5.3 (FastCGI)
- VPS под управлением Debian Linux / MySQL 5.1.39
В этой среде я использую только Moodle 1.9.12 (для подключения к базе данных с использованием adoDB и постоянных подключений), часть php на общем сервере, база данных на VPS. Я подозреваю, что из-за того, что PHP работает на общем сервере, другие учетные записи хостинга влияют на меня (я имею в виду, что база данных отклоняет соединения, мне действительно безразлично ОЗУ / ЦП).
Читая о проблеме, которую я видел в местах, где постоянные соединения не работают хорошо с PHP как CGI / FastCGI и что, если оба сервера находятся в локальной сети, на самом деле не имеет значения использование постоянных или не постоянных соединений, потому что соединения будет быстрым в любом случае. Поэтому сейчас я использую непостоянные соединения. Я думаю, что это может быть частью проблемы, но я не понимаю, почему это работает с большей нагрузкой. Какие настройки PHP / Apache здесь задействованы?