이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 13999|회답: 0

[ASP.NET] ASP.NET 캐시

[링크 복사]
게시됨 2015. 6. 17. 오전 11:27:42 | | |
ASP.NET 본질적으로 ASP.NET 애플리케이션에 정보를 캐시하는 프로그래밍 기능을 제공합니다. 기능은 애플리케이션 객체와 유사하지만, 애플리케이션의 수명 동안 캐시된 정보를 동적으로 유지할 수 있는 기능을 ASP.NET 합니다. 애플리케이션 내 데이터를 캐싱하면 데이터가 서버에 위치해 있어 빠르게 복구할 수 있어 성능을 크게 향상시킬 수 있습니다. 원래 데이터 소스를 다시 조회할 필요 없이. 특히 현재 시스템에서 가장 큰 병목 현상은 데이터베이스이며, 캐시의 합리적인 사용은 불필요한 데이터베이스 접근을 줄여 시스템 성능을 최적화할 수 있습니다.

      캐시 객체는 관리 애플리케이션의 다른 사용자나 ASP.NET 자체가 캐시 내 캐시 항목에 대해 행동할 수 있도록 관련성 기반 만료 및 콜백 알림을 구현하는 능력을 향상시킵니다. 캐시 객체를 사용해 어떤 타입(값 타입 또는 애플리케이션 타입)이든 저장한 후 업데이트하거나 삭제하세요. 캐시는 애플리케이션 객체보다 더 유연한 객체입니다. 지원은 다음과 같습니다:

      1. 관련성 기반 만료 및 삭제 - 캐시 객체는 자동 만료 및 삭제를 파일 이벤트, 특정 또는 상대적인 날짜/시간, 또는 다른 캐시 키에 바인딩할 수 있는 기능을 제공합니다.

      2. 자동 잠금 관리 - 캐시 객체에는 내부 잠금 관리가 포함되어 있어, 원자 업데이트(계산 연산에 삽입할 수 있는 업데이트)를 동기화합니다.

      3. 콜백 메커니즘 - 캐시 객체는 캐시 항목을 삭제할 때 콜백 함수를 호출하도록 설정할 수 있는 기능을 제공합니다.



      캐시 추가 메서드에는 Add() 또는 Insert(가 포함되며, Insert 메서드는 기본 매개변수 두 가지를 모두 사용하여 선택적 매개변수를 사용하여 캐시를 추가할 수 있습니다:

      Cache.Add(키이름, 키값, 의존성, 절대 만료, 슬라이딩 만료, 우선순위, 캐시 아이템 제거콜백);

      매개변수는 캐시 이름, 캐시된 객체, 의존성, 절대 만료 시간, 상대적 만료 시간, 우선순위, 그리고 캐시 만료로 인한 이벤트입니다.



      캐시 의존성: 파일 의존성, 기타 캐시 의존성, 데이터베이스 의존성, 만료 시 메서드가 설정되며, 의존성이 변경되면 캐시는 무효가 되어 특정 이벤트를 발생시킬 수 있습니다.

      1. 파일 의존성: xml 파일에 대한 캐시 의존성:


  1. <p>DataSet dsProducts = new DataSet();</p><p>//...dsProducts数y据Y</p><p>CacheDependency fileDepends = new CacheDependency(Server.MapPath("Northwind.xml"));</p><p>Cache.Insert("dsProducts", dsProducts, fileDepends);</p>
코드 복사


      2. 기타 캐시 항목 의존성:

  1. <p>object cacheData;</p><p>string[] fileDependsArray = { Server.MapPath("Northwind.xml") };</p><p>string[] cacheDependsArray = { "Depend0", "Depend1", "Depend2" };</p><p>CacheDependency cacheDepends = new CacheDependency(fileDependsArray, cacheDependsArray);</p><p>Cache.Insert("cacheName", cacheData, cacheDepends);</p>
코드 복사


         3. 만료 시간 설정:

         AbsoluteExpiration은 캐시의 절대 만료 시간을 설정할 수 있으며, 예를 들어 30분 후에 만료되도록 설정할 수 있습니다:


  1. Cache.Insert("cacheName ", "cacheValue", null, DateTime.Now.AddMinutes(30), Cache.NoSlidingExpiration);
코드 복사

          NoSlidingExpiration은 상대적인 만료 시간을 설정할 수 있는데, NoSlidingExpiration이 설정한 시간 내에 캐시에 접근하지 않으면 캐시가 만료되지 않습니다. 30분 이내에 캐시에 접근하면 만료되지 않습니다:


  1. Cache.Insert("cacheName", "cacheValue", null, Cache.NoAbsoluteExpiration, TimeSpan.FromSeconds(30));
코드 복사






이전의:인스턴스 참조를 사용하여 멤버 "System.Web.Caching.Cache.NoAbsoluteExpiration"에 접근할 수 없음; ...
다음:문자 메시지나 QQ 메시지만 해도 지역 폭군의 친구의 아이폰이 즉시 다운되고 종료되며 멈춥니다!
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com