Попытка разделить мое приложение LAMP на два сервера, один для php и один для mysql. Пока приложение подключается локально через файловый сокет и работает нормально.
Я беспокоюсь о количестве подключений, которые я могу установить, если это через сеть. Я тестировал tcp-соединения в unix для целей тестирования, и я знаю , что вы не можете превысить определенное количество соединений в секунду, в противном случае он останавливается из-за нехватки ресурсов (будь то сокеты, дескрипторы файлов или что-то еще) ). Я также понимаю, что php не реализует пул соединений, поэтому для каждой загрузки страницы необходимо устанавливать новое соединение по сети. Я также посмотрел в pconnect для php, и это, кажется, приносит больше проблем.
Я знаю, что это очень распространенная установка (php + mysql). Может ли кто-нибудь предоставить информацию о типичном использовании и статистике, которую они получают со своих серверов? Спасибо!
Проблема не связана с нехваткой соединений, разрешенных моим MySQL. Основная проблема в том, что unix не может очень быстро создавать и разрывать TCP-соединения. Сокеты заканчиваются в TIME_WAIT, и вам нужно подождать некоторое время, прежде чем освободить больше сокетов для повторного подключения. Эти два скриншота ясно показывают эту картину. MySQL работает до определенного момента, а затем делает паузу, потому что на веб-сервере закончились сокеты. По прошествии определенного времени веб-сервер смог установить новые соединения.
альтернативный текст http://img35.imageshack.us/img35/3809/picture4k.png
альтернативный текст http://img35.imageshack.us/img35/4580/picture2uyw.png