2010-04-12 2 views

답변

6

일반적으로 성능 향상

http://developer.yahoo.com/performance/rules.html

Firebug 용 YSlow를 설치하면이 모든 규칙이 유효하게 적용됩니다.

캐시에 관해서는 특히이 튜토리얼을 읽는 것이 좋습니다. 캐시는 매우 광범위한 주제이며이

http://www.mnot.net/cache_docs/#CONTROL

는 특히 ASP NET 페이지 출력 캐시 지시자에 대해 이야기 :-) 10 개 라인에서 모든 것을 설명하기 쉽지 않다, 그것은 사용하기 매우 간단합니다. 여기에서 참조를

http://msdn.microsoft.com/en-us/library/hdxfb6cy.aspx

을 가지고 있지만 CSS, JS 및 이미지와 같은 다른 자원 또한 페이지 캐시를 사용하는 것이 중요 고려하시기 바랍니다.

+0

위의 링크처럼 부패가되어 해결책으로 링크하지 마십시오. –

1

나는 전에 asp.net 캐싱에 대해 몇 년 전에 쓴 기사가있다. 난 당신이 언어를 이해할 수 있다고 생각 :

http://www.csharpnedir.com/articles/read/?id=736&title=ASP.NET%27de

+0

예. 가능합니다. 하지만 Asp.Net 4가 나온다면 아마도 대부분의 일이 다시 바뀔 것입니다. –

+0

Asp.NET 4.0에서 변경된 사항이 있으면 아마도 사용자의 추상화 부분에 영향을 미치지 않을 것입니다. 따라서 걱정할 필요가 없습니다. – Tarik

7

는 ASP.NET 캐싱은 bug 1.0 이후, 즉 효율적으로 사용하지 않도록 설정할 수 있습니다 클라이언트 측 캐싱을 가지고주의하십시오.
그 이유는 나중에 HttpCachePolicy.SetOmitVaryStar() 메서드가 해결 방법으로 추가 된 이유입니다. 개발자는이를 사용해야하지만 불행히도 위의 방법에 대해 알고있는 개발자는 거의없는 것으로 보입니다. 에 설명 된대로 응답에서
는 동작은 ASP.NET 4.0에서 변경되는 ASP.NET 4 Breaking Changes list :

는 ASP.NET 1.0에서 버그가 출력 캐시로 위치 = "ServerAndClient"를 지정 캐시 페이지를 발생

응답에서 Vary : * HTTP 헤더를 내 보냅니다. 이것은 클라이언트 브라우저가 페이지를 로컬에 캐시하지 않는다는 사실을 알려주는 효과가있었습니다.

ASP.NET 1.1에서는 Vary : * 헤더를 표시하지 않도록 호출 할 수있는 System.Web.HttpCachePolicy.SetOmitVaryStar 메서드가 추가되었습니다. 이 메서드는 방출 된 HTTP 헤더를 변경하면 해당 시점에 잠재적으로 큰 변화로 간주되기 때문에 선택되었습니다. 그러나 개발자는 ASP.NET의 동작에 혼동을 느끼며 버그 보고서는 개발자가 기존 SetOmitVaryStar 동작을 인식하지 못한다는 것을 보여줍니다.

ASP.NET 4에서 루트 문제를 수정하기로 결정했습니다. 바리 없습니다 : * HTTP 헤더가 더 이상 다음 지시문을 지정 응답에서 방출 :

OutputCache를이 위치 = "ServerAndClient"% 결과>

, SetOmitVaryStar은 더 이상 비바리 억제하기 위해 필요하지 않습니다

< :* 머리글.

페이지의 @ OutputCache 지시어에 Location = "ServerAndClient"를 지정하는 응용 프로그램에서 Location 속성 값의 이름에 의해 암시되는 동작을 볼 수 있습니다. 즉, 페이지는 브라우저에서 캐시 할 수 있습니다. SetOmitVaryStar 메서드를 호출합니다.

는 방출해야합니다 응용 프로그램의 페이지가 다른 경우 : *, 다음 예제와 같이 AppendHeader의 메소드를 호출

HttpResponse.AppendHeader ("다름", "*");

또는 출력 캐싱 위치 속성 값을 "서버"로 변경할 수 있습니다.

+0

유익한 답변 주셔서 감사합니다. 내 Asp.Net 4 응용 프로그램에서 캐싱을 사용하기 시작합니다. –

관련 문제