Продолжительность 394 при выполнении запроса SQL слишком много? - PullRequest
1 голос
/ 23 марта 2009

У меня была проблема с пулом соединений:

Как решить проблему пула соединений между ASP.NET и SQL Server?

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

Это слишком большое значение?

Может ли это вызвать предыдущую проблему пула соединений?

Ответы [ 3 ]

3 голосов
/ 23 марта 2009

400 означает 400 мс или 0,4 секунды.

Действительно ли это слишком долго, зависит. Если это ваша главная страница или другая область с высоким трафиком, то это слишком много, если только это не интранет-сайт. Возможно, вам придется переосмыслить, как эти данные могут быть получены, или использовать кэширование, чтобы уменьшить количество раз, которое вам фактически нужно выполнить запрос.

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

Вы также можете запустить Tuning Advisor, чтобы определить, выполняются ли запросы только медленно, потому что у вас нет правильных индексов.

2 голосов
/ 23 марта 2009

Это зависит от вашего приложения. Это меньше, чем 1/2 секунды. Если вы имеете дело с десятками миллионов строк данных, то это может быть неплохо. С другой стороны, если у вас есть тысячи пользователей, ваши наборы данных небольшие, и этот запрос выполняется постоянно, то, возможно, вам нужно посмотреть на производительность запроса.

1 голос
/ 23 марта 2009

Этот тип зависит от того, для каких запросов используются, как часто они выполняются и каковы ожидания пользователя для времени ответа.

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

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

Если запрос НЕОБХОДИМО выполнить в течение этого промежутка времени и не может быть оптимизирован в дальнейшем, но данные меняются не очень часто, возможно, кэширование результата в приложении поможет улучшить время отклика.

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

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