의 최근 게시물에서 다시 한 번 강조했듯이 주요 취미 CEO Kendall Bennett, Couchbase는 ASP.NET 애플리케이션의 성능을 개선할 수 있는 훌륭한 솔루션입니다. 애플리케이션의 지속성 요구 사항을 위한 밀리초 미만의 CRUD 작업을 제공하는 것 외에도 Couchbase는 애플리케이션의 일시적인 데이터 요구 사항을 위한 많은 이점을 제공합니다.
관리할 뿐만 아니라 ASP.NET 세션 상태 를 사용하면 이제 애플리케이션의 출력 캐시를 위한 백업 저장소로 Couchbase Server를 사용할 수 있습니다. 최신 커밋은 Couchbase.AspNet 프로젝트에는 CouchbaseOutputCacheProvider가 포함되어 있습니다.
구현 세부 사항에 관심이 있거나 출력 캐시 공급자를 구현한 적이 있는 분들을 위해 간단히 말씀드리자면... Couchbase Server는 출력 캐시 백업 저장소로 사용하기에 매우 적합한 것으로 밝혀졌습니다. 실시간 기능 덕분에 CouchbaseOutputCacheProvider 클래스를 만드는 데 몇 줄의 코드가 필요하지 않았습니다. 영구 만료 필드를 추가하기 위해 캐시 항목에 래퍼를 만들 필요가 없었습니다. 만료된 경우 Couchbase Server에서 반환되지 않으므로 항목을 검색한 후 만료 여부를 확인할 필요도 없었습니다.
새 공급자를 사용하려면 항상 하던 대로 클라이언트를 구성하면 됩니다:
<섹션 이름="couchbase" 유형="Couchbase.Configuration.CouchbaseClientSection, 카우치베이스"/>
<couchbase>
<서버 버킷="default" 버킷 비밀번호=“”>
<add uri=“http://127.0.0.1:8091/pools”/>
>
>
그런 다음 출력 캐시 공급자 섹션을 구성합니다:
<제공자>
<add 이름="카우치베이스 캐시" 유형="Couchbase.AspNet.OutputCache.CouchbaseOutputCacheProvider, Couchbase.AspNet" 섹션="카우치베이스 캐싱"/>
>
>><출력 캐시 기본 제공자="카우치베이스 캐시">
<제공자>
<add 이름="카우치베이스 캐시" 유형="Couchbase.AspNet.OutputCache.CouchbaseOutputCacheProvider, Couchbase.AspNet" 섹션="카우치베이스 캐싱"/>
>
>
그런 다음 평소와 같이 작업에서 OutputCache를 구성합니다(ASP.NET MVC):
public 작업 결과 시간(문자열 foo)
{
반환 콘텐츠(날짜/시간.지금.ToString());
}
또는 ASP.NET 웹폼에서는 페이지 지시문을 사용합니다:
앱에서 이미 Couchbase를 사용 중이고 사용자 지정 섹션을 지정해야 하는 경우 새 섹션 이름을 입력하고 아래와 같이 '공급자' 요소의 '추가' 노드에 '섹션' 속성을 설정하기만 하면 됩니다:
<섹션 이름="couchbaseSession" 유형="Couchbase.Configuration.CouchbaseClientSection, 카우치베이스"/>
<couchbaseSession>
<서버 버킷="세션 상태" 버킷 비밀번호=“”>
<add uri=“http://127.0.0.1:8091/pools”/>
>
>
<출력 캐시 기본 제공자="카우치베이스 캐시">
<제공자>
<add 이름="Couchbase" 유형="Couchbase.AspNet.SessionState.CouchbaseSessionStateProvider, Couchbase.AspNet" 섹션="couchbaseSession" />
>
><섹션 이름="couchbaseSession" 유형="Couchbase.Configuration.CouchbaseClientSection, 카우치베이스"/>
<couchbaseSession>
<서버 버킷="세션 상태" 버킷 비밀번호=“”>
<add uri=“http://127.0.0.1:8091/pools”/>
>
>
<출력 캐시 기본 제공자="카우치베이스 캐시">
<제공자>
<add 이름="Couchbase" 유형="Couchbase.AspNet.SessionState.CouchbaseSessionStateProvider, Couchbase.AspNet" 섹션="couchbaseSession" />
>
>
자유롭게 사용할 수 있습니다. 코드 또는 너겟 패키지. 이것은 Apache 라이선스 2.0이 적용된 Couchbase Labs 프로젝트입니다. 하지만 공식적으로 지원되는 Couchbase 제품이 아니라는 점을 기억하세요. 하지만 포럼에 자유롭게 질문을 게시하세요.
행복한 출력 캐싱!
이 사례의 모든 측면을 보여주는 매우 포괄적이고 완전한 기사입니다.
일반적으로 ASP.NET과 함께 MVC 및 DOJO를 사용하고 있습니다. 작업 예제 및 문의처 보기 http://www.smallmarketingcompany.com
좋은 소식입니다!