Сколько запросов может обрабатывать SQL Server в секунду? - PullRequest
5 голосов
/ 01 декабря 2009

Я использую JMeter для проверки производительности нашего приложения. но я обнаружил, что когда я отправляю 20 запросов от JMeter, по этой причине результатом должно быть добавление 20 новых записей на сервер sql, но я просто нахожу 5 новых записей, что означает, что сервер SQL отбрасывает другие запросы (потому что я взял журнал и убедитесь, что новые записи вставки отправляются на сервер sql.)

У кого-нибудь есть идеи? Какое пороговое количество запросов может обрабатывать SQL-сервер в секунду? Или мне нужно сделать некоторые настройки?

Да, в моем приложении я пытался, но кажется, что только 5 запросов принимаются, я не знаю, как настроить, тогда он может принимать больше.

Ответы [ 5 ]

7 голосов
/ 01 декабря 2009

Я не уверен, что количество запросов в секунду напрямую отправляется на сервер SQL, выбрасывая ваши вставки. Возможно, есть логическая ошибка приложения, которая откатывается или не в состоянии зафиксировать вставки. Или приложение не может обрабатывать параллелизм и вставляет данные, нарушающие ограничения. Я бы также проверил журналы сервера на наличие тупиков.

5 голосов
/ 01 декабря 2009

Используйте SQL Profiler или контекст данных LINQ для регистрации, чтобы увидеть, что на самом деле было отправлено на сервер, а затем определить, в чем проблема.

Включить журнал данных контекста следующим образом:

datacontext.Log = Console.Out;

В качестве примечания я обработал 10 000 транзакций в секунду в SQL Server, поэтому не думаю, что это проблема.

3 голосов
/ 01 декабря 2009

Это очень зависит от того, какой тип запросов вы делаете. У вас может быть много запросов, запрашивающих данные, которые уже находятся в буфере, так что доступ к чтению с диска не требуется, или у вас могут быть чтения, которые фактически требуют доступа к диску. Если ваша база данных небольшая и у вас достаточно памяти, у вас могут быть все данные в памяти все время - тогда доступ будет очень быстрым, вы можете получить более 100 запросов в секунду. Если вам нужно прочитать диск, вы зависите от аппаратного обеспечения. Я выбрал контроллер UltraSCSI-160 с накопителями UltraSCSI-160, самый быстрый вариант, который вы можете получить на платформе типа ПК. Я обрабатываю около 75 000 записей каждую ночь (они загружаются с другого сервера). Для каждой записи, которую я обрабатываю, программа делает около 4-10 запросов, чтобы поместить новую запись в правильный «слот». Весь процесс занимает около 3 минут. Я использую его на 850 МГц процессоре AMD Athlon с 768 МБ оперативной памяти. Надеюсь, это даст вам небольшое представление о скорости.

0 голосов
/ 01 декабря 2009

Вы также можете использовать профиль сервера Sql, чтобы проверить, как выполняются ваши запросы

0 голосов
/ 01 декабря 2009

Чтобы получить тесты производительности для SQL Server и других СУБД, посетите веб-сайт Совета по производительности обработки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...