HTTP-запросы веб-сайта Azure ASP.NET поставлены в очередь

У нас есть веб-сайт, развернутый в Azure, который имеет ужасную производительность. Когда нагрузка увеличивается, время отклика увеличивается до целых минут! Загрузка процессора даже не высока, где-то в области 40% (мы запускаем один средний экземпляр (S2)).

После большой отладки (я понятия не имел, что вызвало это), я наконец наткнулся на журнал 'FREB', где говорится, что запросы находятся в очереди:

  1. AspNetStart Data1 = "GET", Data2 = "/ profiel / aanvullen", Data3 = "" 13: 48: 44.279
  2. AspNetReqQueued 13: 48: 44.810
  3. AspNetReqDequeued 13: 49: 39.545
  4. AspNetAppDomainEnter Data1 = "/ LM / W3SVC / xxxx / ROOT-1-xxxxx

Я думал, что экземпляры Azure будут настроены "оптимально" из коробки, поэтому мне не придется беспокоиться о настройке таких вещей, как maxconnection или же maxConcurrentThreadsPerCPU, Сайт не использует базу данных, но он вызывает 2 разных API REST, поэтому я подумал, что там будет очередь. Я пытался проверить webrequest.ServicePoint.ConnectionLimit собственности, но я помню, что напечатано что-то вроде 2 миллиона (или, возможно, было макс. Int).

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

В основном у меня есть 2 вопроса:

  1. Что может быть причиной этого / что я должен изменить?
  2. Как я мог отладить это? В Azure так много графиков и настроек. Я не уверен, где я могу видеть именно то, что мне нужно увидеть. Является ли пропускная способность узким местом, количеством открытых запросов к определенному веб-сервису, чем-то еще и так далее.

0 ответов

Другие вопросы по тегам