Выявление узких местIdentify Bottlenecks

Применимо к:Applies to: даSQL ServerSQL Server (все поддерживаемые версии) yesSQL ServerSQL Server (all supported versions) ДаБаза данных SQL AzureAzure SQL DatabaseYesБаза данных SQL AzureAzure SQL DatabaseПрименимо к:Applies to: даSQL ServerSQL Server (все поддерживаемые версии) yesSQL ServerSQL Server (all supported versions) ДаБаза данных SQL AzureAzure SQL DatabaseYesБаза данных SQL AzureAzure SQL Database

Одновременный доступ к общим ресурсам может привести к появлению узких мест.Simultaneous access to shared resources causes bottlenecks. Узкие места присутствуют в любой программной системе, и избежать их появления нельзя.In general, bottlenecks are present in every software system and are inevitable. Однако чрезмерная нагрузка на общие ресурсы повышает время отклика, и поэтому ее необходимо выявить и выполнить настройку.However, excessive demands on shared resources cause poor response time and must be identified and tuned.

Причины появления узких мест:Causes of bottlenecks include:

  • недостаточность ресурсов, требуется обновление или наращивание компонентов;Insufficient resources, requiring additional or upgraded components.

  • однотипные ресурсы, рабочая нагрузка на которые не распределена должным образом (например, монопольное использование диска);Resources of the same type among which workloads are not distributed evenly; for example, one disk is being monopolized.

  • неисправность ресурса;Malfunctioning resources.

  • ресурс неправильно настроен.Incorrectly configured resources.

Анализ узких местAnalyzing Bottlenecks

Чрезмерная продолжительность различных событий служит признаком узких мест, которые нуждаются в дополнительной настройке.Excessive durations for various events are indicators of bottlenecks that can be tuned.

Пример:For example:

  • какой-либо компонент препятствует завершению загрузки данного компонента, таким образом повышая общую длительность загрузки;Some other component may prevent the load from reaching this component thereby increasing the time to complete the load.

  • запросы от клиентов могут выполняться дольше из-за загруженности сети.Client requests may take longer due to network congestion.

Ниже приведены пять основных областей, на которые следует обратить внимание при выявлении узких мест.Following are five key areas to monitor when tracking server performance to identify bottlenecks.

Возможная область появления узких местPossible bottleneck area Влияние на серверEffects on the server
Использование памятиMemory usage Недостаток памяти, выделенной или доступной Microsoft SQL ServerSQL Server , значительно снижает производительность.Insufficient memory allocated or available to Microsoft SQL ServerSQL Server degrades performance. Данные медленнее считываются с диска, чем непосредственно из кэша.Data must be read from the disk rather than directly from the data cache. Операционные системы Microsoft Windows выполняют чрезмерную выгрузку данных на диск и обратно в процессе обращения к различным страницам.Microsoft Windows operating systems perform excessive paging by swapping data to and from the disk as the pages are needed.
загрузка ЦП;CPU utilization Стабильно высокая загрузка ЦП может указывать на то, что следует оптимизировать запросы Transact-SQLTransact-SQL , либо на необходимость модернизации ЦП.A chronically high CPU utilization rate may indicate that Transact-SQLTransact-SQL queries need to be tuned or that a CPU upgrade is needed.
Дисковый ввод-выводDisk input/output (I/O) Transact-SQLTransact-SQL Чтобы снизить необходимость в операциях ввода-вывода, можно оптимизировать запросы (например, создав индексы).queries can be tuned to reduce unnecessary I/O; for example, by employing indexes.
Соединения пользователейUser connections Слишком много пользователей, одновременно производящих доступ к серверу, могут вызвать снижение производительности.Too many users may be accessing the server simultaneously causing performance degradation.
Блокирующие блокировкиBlocking locks Неверно разработанные приложения могут вызвать блокировки и затруднить параллелизм, а это повышает время отклика и снижает пропускную способность системы.Incorrectly designed applications can cause locks and hamper concurrency, thus causing longer response times and lower transaction throughput rates.

См. также:See Also

Мониторинг использования ЦП Monitor CPU Usage
Наблюдение за использованием диска Monitor Disk Usage
Наблюдение за использованием памяти Monitor Memory Usage
SQL Server, объект General Statistics SQL Server, General Statistics Object
SQL Server, объект LocksSQL Server, Locks Object