Немного фона:
У нас есть сервис окон, который получает данные из внешнего сервера и хранит их на локальном DB (SQL-сервер 2012).
Внешний сервер отправляет больше чем 1 500 “сообщений” в секунду, но наш уровень устройства хранения данных является почти 500 сообщениями/с для локального сервера (сервис окон, и база данных находятся на единственном VM с Xeon E5520 и 16 ГБ RAM на HP G7 Server / Windows Server 2012).
Когда я перемещаю сервис и DB к моему локальному ПК, уровень устройства хранения данных повышается до сообщения/с 1100 года.
Я сделал тест на нескольких ПК (core2 дуэт и Core i5) и Серверы (HP G7 и G8, VM и физические серверы), результатом было то же: все ПК получают сообщения способом лучший уровень, чем наши серверы.
Мы думали, что Это могла бы быть сетевая проблема, но это не было.
Я сделал “Пропускную способность Транзакции Памяти”, тестируют с “Sisoft Sandra” на Серверах и ПК и выяснил, что наши ПК делают намного лучшее задание, чем серверы. минимальный результат ПК был 5.4MTPS (на core2 дуэте E7400), максимальный результат сервера был 3MTPS (на HP ProLiant DL380P с Xeon E5-2650).
Я склонен приходить к заключению, что существует что-то не так с процессорами Xeon, но это было бы странным заключением, так как существуют десятки серверов БД Xeon во всем мире.
Я пропускаю что-то? Существует ли специальная конфигурация на BIOS для решения этой проблемы?
Так как это приложение для обмена сообщениями, и вы используете серверы HP ProLiant, я бы отнесся к этому как к настройке с низким уровнем задержек... Если это легко воспроизводимый тест, можете попробовать следующее?
Посмотрите на некоторые рекомендации по настройке , которые мы используем для тяжелых приложений с сообщениями.
.