MVC 및 EntityFramework 추가 기능과 함께 StackExchange.MiniProfiler
을 사용하여 웹 사이트에서 한 유형의 요청에 대해 안정적으로 발생하는 긴 TTFB를 추적합니다. 하단의 이미지에서 볼 수 있듯이이 요청에 표시된 기간은 504.3ms입니다. 나는 이것이 BeginRequest
에있는 MiniProfiler.Start
에 대한 호출과 MiniProfiler.End
에 대한 호출과 EndRequest
(아이들 단계의 시간을 뺀) 사이의 시간에 해당한다고 생각합니다. 브라우저 도구를 사용하면이 요청에 대한 TTFB가 MiniProfiler의 데이터와 일치한다는 것을 알 수 있으므로 MiniProfiler가 정확하다고 생각합니다. 나는 점점 더 많은 코드 주위에 프로파일 러 단계를 추가하고 있으며 모든 것이 현재 래핑되었다고 생각하지만, 504ms 근처에 어떤 것도 추가하지는 않습니다.MiniProfiler 및 Azure가 TTFB에 대해 설명되지 않음
이 요청은 다른 요청이 동시에 발생하는 페이지에서 발생하는 ajax 요청입니다. 내가 URL을 빼내어 같은 브라우저에서 고립 시키면 기간과 TTFB는 ~ 100ms에 불과합니다. 이것은 다른 요청 중 하나가이 요청을 차단하고 있음을 암시하는 것처럼 보일 수 있지만, 차단해야하는 항목이 전혀 없다고 생각합니다. 다른 요청은 그만큼 오래 걸리지 않습니다.
사이트가 중간 수준의 Azure App Service로 실행 중이며, 여기에 제한이 될 수 있습니까? 어떻게 그것을 확인하거나 부정 할 수 있습니까? 여기에 더 많은 데이터를 노출시킬 수있는 MiniProfiler 트릭이 있습니까?
시간 오프셋 데이터와 비슷합니까? 즉 "more columns"보기와 "from start"열은 무엇입니까? –
아하, 바로 그게 도움이되는 이유를 알았어, 고마워! – jackmott
더 많은 열과 관련없는 단계로 이미지를 업데이트했습니다. 지연이'Application_PostAuthenticateRequest'와'FormsAuthSessionEnforcement.OnAcquire' 사이의 어딘가에있는 것처럼 보입니다. 수명주기에 대해 공부할 때가 있습니다. – jackmott