Anton Sidorov homepage

Bookmark this to keep an eye on my project updates!

Follow me on GitHub

Метрики Производительность Быстродействие

TODO

HTTP.SYS

  • Queue
    • “Http Service Request Queues\CurrentQueueSize” - The request count in the queue
    • “Http Service Request Queues\MaxQueueItemAge” - This means IIS is falling behind in request processing, so all incoming requests are waiting at least this long to begin getting processed
    • “Http Service Request Queues\ArrivalRate” - This basically implies that more requests are coming into the system than are being processed, and this always eventually results in queueing

Web Admin Service (WAS_W3WP)

  • “Total WAS Messages Received” - Total number of messages received by the worker process from WAS
  • “Total Messages Sent to WAS” - Total number of messages sent to WAS by the worker process
  • TODO
    • “Messages Sent to WAS” - Total count of messages sent to WAS
    • “Total Requests Served” - Total number of requests served by the worker process. This counter is only meaningful when request based recycling is enabled for the application pool.

W3SVC

Application Pool

  • \APP_POOL_WAS(*)\Maximum Worker Processes
  • \APP_POOL_WAS(*)\Current Worker Processes

Worker process (w3wp.exe) (W3SVC_W3WP)

W3SVC_W3WP - exposes HTTP request processing related counters for the worker process

  • Saturation
    • “Maximum Threads Count” - Maximum number of threads to which the thread pool can grow as needed
    • “Total Threads” - Total number of threads available to process requests in the worker process
      • Threads Per Processor Limit in IIS
  • Traffic
    • “Requests / Sec” - HTTP requests/sec being processed by the worker process
    • “Active Requests” - Current number of requests being processed by the worker process - “Total HTTP Requests Served” - Total number of HTTP requests served by the worker process
  • Latency
    • “Active Threads Count” - Number of threads actively processing requests in the worker process
  • Errors
    • .NET CLR Exceptions

ASP.NET

  • Traffic
    • “\ASP.NET\Requests Current”
  • Latency
    • “ASP.NET v4.0.30319\Requests Queued” - limit Process Model’s RequestQueueLimit
  • Errors
    • “\ASP.NET\Requests Disconnected”
    • “\ASP.NET\Requests Rejected”
  • TODO к CLR Thread относятся?
    • ASP.NET\Worker Process Running - Количество рабочих процессов, запущенных на серверном компьютере.
    • ASP.NET\Requests Failed - Общее количество неудачных запросов. Любые коды состояния, превышающие или равные 400, увеличат этот счетчик.
    • ASP.NET Applications\Errors Total - Общее количество ошибок, возникающих во время выполнения HTTP-запросов, включая любые ошибки синтаксического анализа, компиляции или времени выполнения.
    • ASP.NET Application\Errors Total/Sec - Количество ошибок в секунду, возникающих во время выполнения HTTP-запросов, включая любые ошибки синтаксического анализа, компиляции или времени выполнения.

APP

iis perf counters

  • Performance Counters for ASP.NET
  • Performance Counters for WCF service дополнительно
  • Traffic
    • ASP.NET\Requests Current - суммарное количество выполняющихся в настоящее время запросов. Значение этого счетчика включает в себя число обрабатывающися запросов, находящихся в очереди и ожидающих отправки клиенту. Если это значение превышает параметр requestQueueLimit, который расположен в секции processModelsection файла конфигурации веб-сервера, то последующие запросы будут отбрасываться
    • ASP.NET Application\Requests Executing - показывает количество одновременно выполняющихся запросов
    • ASP.NET Application\Requests/sec RPS - текущую пропускную способность приложения
  • Latency
    • “ASP.NET Application\Request Execution Time” - время выполнения (в мс) последнего запроса
    • Queue
      • “ASP.NET\Requests Queued” - число запросов ожидающих в очереди на обработку
      • “ASP.NET\Application\Request Wait Time” - время ожидания в очереди последнего запроса - Проверьте логи на наличие ошибки “HTTP Error 503.2 — Service Unavailable”. Постарайтесь определить, не блокируется ли часть запросов в очереди
  • Error
    • “Requests Rejected” – Общее количество невыполненных запросов ввиду нехватки ресурсов сервера на их обработку.
  • ASP.NET Sessions
    • “ASP.NET\Sessions Timed Out” - Количество сеансов, время ожидания которых истекло
    • “ASP.NET\Sessions Total”
  • ASP.NET Core metrics