Попробуйте tracert от обоих направлений. Они следуют за тем же маршрутом? Возможно, ответ с Вашего сервера идет на другой маршрут, который заблокирован.
Проблемы я предвижу..
1.) Mysql использует большую память для сотен/тысяч соединений дизайном..
В основном необходимо настроить confiuguration, чтобы помочь минимизировать использование памяти
Я не думаю, что это - проблема памяти
С базой данных 200 МБ и 32 ГБ установил Вас, не должен поражать Вашу максимальную память
Вы только имеете 250 пользователей и истратили ЦП
2.) Mysql дизайном, дает одно соединение/поток с ядром (это может быть совместно использовано),
Это, очевидно, может быть совместно использовано со многими потоками, но 1 наклон потока нарушает ядро.
Проблемой, которую Вы видите, являются слишком много "МЕДЛЕННЫХ/ТЯЖЕЛЫХ" запросов, посредством чего максимизация каждого ядра..
Поэтому Вы наклоняетесь, берут больше пользователей, как ЦП в его пределе..
- Начните представлять свои запросы
- Индексируйте правильно для чтений
- В случае необходимости используйте ведущее устройство записи и ведомое устройство чтения
Некоторые вопросы
What is your ratio READS / WRITES???
Have you tried Slow_query logging ( set it to 1 second )?
Have you used "explain" on queries to see if indexing is working?
Have you considered a job queue for writes?
Are you using the mysql cache effectively for reads?
Реалистично Ваша проблема плоха, запрашивает/вставляет..
если можно решить эту проблему, Мы можем помочь Вам с Вашей конфигурацией минимизировать использование памяти..
Конфигурация в основном не предлагает много для помощи с использованием ЦП, которое ваше дело с кодом!
Надежда это ясно :D
Это является довольно основным, но "mysql производительность, настраивающая сценарий краткой информации" (http://www.day32.com/MySQL/), обеспечивает некоторые хорошие предложения для начала работы.
В настоящее время это обрабатывает рекомендации для следующего:
- Журнал медленного запроса
- Соединения Max
- Рабочие потоки
- Ключевой буфер
- Кэш запроса
- Буфер вида
- Соединения
- Временные таблицы
- Таблица (открытый и определение) кэш
- Блокировка таблицы
- Сканирования таблицы (read_buffer)
- Состояние Innodb
У меня только есть несколько точек, о которых необходимо думать.
32 ГБ RAM на в большой степени используемом сервере базы данных не являются "монстром", но она зависит от того, как Ваша база данных используется. Если у Вас есть огромное количество запросов - И данные (это требуют), не может все вписаться в RAM, у Вас будет серьезная проблема с дисковой системой, кующей ввод-вывод на хранении данных. Это не кажется на необходимость в большем количестве RAM поскольку Вы истратили ЦП.
1 600%-е использование ЦП равняется 16 логическим (8 физических) ядра на истратившем X7550. Необходимо отметить, что гиперпоточность на серверах баз данных высоко обсуждена, поскольку она обычно дает Вам крошечный бит большей производительности записи и крошечный бит меньше производительности чтения. С другой стороны, отключение его не решит Вашу проблему.
Это звучит мне как Ваша база данных, и/или Ваше приложение не разработано очень хорошо с точки зрения оптимизации и время обработки. 250 пользователей, буквально уничтожающих ядра на 8x2,4 ГГц, не являются чем-то, что я назвал бы обычным, и это не что-то, что mysql настройки сервера могут решить для Вас.
Я голосовал для перемещения этого вопроса Переполнению стека.
Я могу дать некоторые общие предложения, поскольку более определенная оптимизация является трудной/невозможной для "слепого" диагноза: