Ошибка установления соединения с базой данных – высокий трафик?

У меня есть сайт WordPress 3.5.1, который получает немного трафика (80 одновременных посетителей, ~ 5 кликов / просмотров страниц в секунду). Сайт работает нормально, пока он не достигнет ~ 85 посетителей. В это время обычно регистрируется 4 администратора. На сайте имеется 8 пользовательских типов сообщений. В сообщениях есть 3500 сообщений, а в пресс-релизах (пользовательский тип сообщения) содержится 13000 сообщений. Все это разбито на страницы на сайте, поэтому на одной странице не более 20 сообщений.

Единственными плагинами, которые я использую, являются wp-pagenavi и w3totalcache.

Я установил WP_DEBUG_LOG в true и зарегистрировал ошибки. Основная ошибка, которую я получаю (помимо различных уведомлений и предупреждений, не связанных с этой проблемой), mysql достиг предела max_user_connections.

Мой текущий max_user_connections установлен в 75. Я пытался установить его выше, но процессор не может справиться с нагрузкой (4 четырехъядерных процессора с частотой 2,17 ГГц и 4 ГБ оперативной памяти).

Что может вызвать столько соединений?

Я просмотрел процессы mysql, запущенные при возникновении ошибок, и есть много соединений, которые говорят «SLEEPING» или «SLEEP» (возможно, 15-20). Я также заметил через журналы процессов, что httpd перезапускается довольно часто во время пикового трафика.

Любые идеи о том, как решить проблему?

ПРИМЕЧАНИЕ. Пожалуйста, не отвечайте, если ваш ответ должен проверить мой файл wp-config.php и убедиться, что мое имя пользователя, пароль и хост правильно. Это не проблема. Сайт работает нормально при нормальном трафике.

Solutions Collecting From Web of "Ошибка установления соединения с базой данных – высокий трафик?"

Раньше я сталкивался с тем же вопросом, как вы уже отметили проблему, связанную с тем, что mysql не принимает слишком много соединений. Решением, которое мы реализовали, было применение надлежащего кэширования (проверьте, как часто кеш недействителен и другие настройки кэширования) и обновить сервер mysql.

В качестве быстрого исправления вы можете очистить соединения на mysql с помощью флеш-хостов;

Если вы уже установили w3tc, я настоятельно рекомендую вам попробовать оптимизировать настройки.

Используйте кеширование страниц с помощью memcache и статического актива CDN. Это дает повышение производительности примерно на 95% для не зарегистрированных пользователей для меня на каждой странице, которую я использовал.

Кэширование страниц, кэширование базы данных и кэширование объектов особенно полезны при загрузке сервера базы данных.

Если вы еще не используете удаленный прокси-сервер перед вашим веб-сервером, я также настоятельно рекомендую вам взглянуть на лак .