2010-05-12 5 views
7

Enter 키를 눌렀을 때부터 웹 페이지가 완전히 표시 /로드되는 시간까지를 측정하는 간단한 방법이 있는지 알고 싶습니다. 타이머를 사용해야할까요, 아니면 놓친 웹 브라우저 컨트롤 (또는 .net 프레임 워크)에 기존 기능이 내장되어 있습니까?웹 페이지의 로딩 시간 측정 (C#)

답변

4

ASP.NET 페이지를 제어 할 수있는 경우 추적을 설정할 수 있습니다. 여기서 페이지 수명주기 (타임 스탬프 포함) 및 기타 유용한 프로파일 링 정보에 대한 정보를 얻을 수 있습니다. 코드에서

<%@ Page Trace="true" %> 

또는 동적 :

하여 영문 파일의 맨 위에 Page 지시문 페이지에 대한 추적을 켜고 응용 프로그램에서

Trace.IsEnabled = true; 

또는 전 세계적으로 웹이 설정 .config :

<configuration> 
<system.web> 
    <trace enabled="true" requestLimit="40" localOnly="false"/> 
</system.web> 
</configuration> 

추적에 대해서도 MSDN documentation을 참조하십시오.

+0

도움, 고맙습니다. 멋진 링크 :) –

+3

하지만 이것은 asp.net이 요청을 완료 할 때까지만 시간을 보여줍니다. 이것을 브라우저로 보내고 거기에 렌더링하는 데 걸리는 시간을 놓치게됩니다. –

+0

... DOM의 복잡성에 대한 피드백도 없습니다.요청은 서버에서 충분히 빠르게 완료 될 수 있지만 브라우저는 모든 DOM 요소를 처리 할 준비가되어 있지 않습니다. 브라우저를 충분히 긴장시키고이 첫 손을 본다면 브라우저가 충돌 할 수도 있습니다. 또한 사용할 수있는 실제 프로파일 링 API가 있습니다. 저는 IE9가 JavaScript에서 액세스 할 수있는 프로파일 링 API를 도입했다고 생각합니다. http://msdn.microsoft.com/en-us/library/ff974378(v=vs.85).aspx#_webperf –

0

간단한 구글 검색이 계시 감사 모든 :)

Timing a Page Load C#

Essentialy 당신이 단지를 Page_Load의 시작과 끝 시간을 기록하고 일을 몇 가지 간단한 수학을 사용하는 차이가 나면로드 시간이 있습니다

+1

OP는 asp.net 랜드에 없습니다. 그는 웹 브라우저 컨트롤이 페이지를로드하는 데 걸리는 시간을 원합니다. –

+0

오해, 공정한. – Yoda

5

Firebug (Firefox의 경우 확장 프로그램)에는 '인터넷'탭 아래에 타이밍 패널이 있습니다.

+3

왜 페이지가 완전히 표시 될 때까지 시간을 보여주는 무언가를위한 downvote? –

3

Fiddler은 모든 웹 요청을 검사하고 관련 타이밍을 표시 할 수 있습니다.

+2

드라이브 바이 -1에 대한 이유가 무엇입니까? – cjk

1

Dynatrace은 클라이언트 측에서 성능 문제를 진단하는 데 매우 강력한 도구입니다.

Fiddler과 결합하여 HTTP 요청이 완료 될 때까지 전체 기간을 제공합니다 (webbrowser). 또한 일부 자동 진단 기능이있어 사용자에게 코드에있는 hotstops/bottlenecks을 알립니다.

성능 문제를 조사 할 때마다이 응용 프로그램이 내 표준 도구 모음의 일부입니다.

0

일부 RUM 도구를 사용하여 로딩 시간을 측정 할 수 있습니다. 이 방법은 브라우저에서 탐색 API를 사용하고 사용자의 관점에서 타이밍을 측정하므로 정확합니다. 다음은 간단한 럼 도구 http://gear5.me과 더 복잡한 도구입니다. http://newrelic.com