캐시 로더/리프레셔의 구성 요소
이 페이지에서는 캐시 로더/새로 고침의 구성 요소와 구성된 데이터 원본에서 데이터를 로드하고 새로 고칠 수 있도록 구성하는 방법을 설명합니다.
ICacheLoader 인터페이스
캐시 로더 및 리프레셔를 구성하려면, ICacheLoader 인터페이스를 구현한 다음 다음을 사용하여 구성해야 합니다. NCache 관리 센터 or 명령줄 도구. NCache 이 사용자 지정 공급자를 사용하여 구성된 데이터 원본에서 데이터를 로드하고 새로 고칩니다.
중대한
다음 사항을 확인하십시오. NCache 실행 서비스가 실행 중이고 방화벽이 비활성화되어 있습니다.
이 인터페이스를 구현하는 클래스는 다음을 허용합니다. NCache 마스터 데이터 소스의 데이터를 캐시로 로드하고 새로 고칩니다. 따라서 이 클래스는 데이터 소스에서 필요한 데이터를 로드하기 위한 논리를 구현해야 합니다. Loader 및 Refresher를 구현하는 클래스에서는 다음 메서드를 정의해야 합니다.
회원 | 타입 | 상품 설명 |
---|---|---|
Init |
void |
이 메서드는 다음에 의해 호출됩니다. NCache 시작 시 캐시 로더/리프레셔를 구성하는 동안 전달될 수 있는 매개변수의 IDictionary/Map을 입력으로 사용합니다. 입력 매개변수를 통해 연결 문자열 등과 같은 배포된 공급자에 대한 런타임 매개변수를 지정할 수 있습니다. |
LoadDatasetOnStartup |
object |
LoadDatasetOnStartup 마스터 데이터 소스에서 데이터를 로드하고 개체를 반환하는 논리가 포함되어 있습니다. 이 방법은 캐시에 로드할 데이터가 포함된 문자열 데이터세트를 사용합니다. |
RefreshDataset |
object |
RefreshDataset 캐시에 로드된 데이터를 새로 고치는 논리를 포함합니다. 이 방법은 UserContext 반환 LoadDatasetOnStartup 어떤 데이터를 새로 고쳐야 하는지 이해합니다. 호출되면 이 메소드는 다음을 기반으로 데이터 소스에서 새로운 데이터를 가져옵니다. UserContext 그것은 받는다. |
GetDatasetToRefresh |
Dictionary |
GetDatasetToRefresh 소요 UserContext 이를 반복하여 할당합니다. RefreshPreference 각 데이터세트에 새로 고칠 데이터 세트가 포함된 사전을 반환합니다. RefreshPreference . |
Dispose |
void |
Dispose 메서드는 Loader/Refresher를 삭제하여 리소스를 확보합니다. |
캐시 로더 태그
NCache 구성된 데이터 세트를 아래에 추가합니다. <cache-loader>
태그 config.ncconf, 클라이언트 애플리케이션에서 가져옵니다.
주의 사항
이러한 데이터 세트는 다음을 통해 지정됩니다. NCache 에 설명된 대로 관리 센터 캐시 시작 로더 구성.
<cache-loader retries="0" retry-interval="0" enabled="True" refresh-on-event="False" refresh-interval="900">
<provider assembly-name="Loader, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" class-name="Loader.Loader" full-name="Loader.dll"/>
<parameters name="connString" value="abc"/>
<datasets>
<dataset name="products" schedule-expression="0:1,5:12:00" schedule-option="Weekly"/>
<dataset name="orders" schedule-expression="0:00:00:20" schedule-option="DailyInterval"/>
<dataset name="customers" schedule-expression="0:00:00:00" schedule-option="DailyTime"/>
<dataset name="stock" schedule-expression="0:1,15,L:10:00" schedule-option="Monthly"/>
<dataset name="discount" schedule-expression="1,L:5,6:09:52" schedule-option="Monthly"/>
<dataset name="sale" schedule-expression="" schedule-option=""/>
</datasets>
</cache-loader>
등록 | 상품 설명 | 형성 |
---|---|---|
retries |
다음 작업 전에 실패한 작업을 수행하기 위한 재시도 횟수입니다. 기본값은 0초입니다. | - |
retry-interval |
실패한 작업을 수행하기 위한 각 재시도 사이의 시간 간격입니다. 기본값은 0초입니다. | - |
enabled |
Refresher의 활성화 여부를 결정합니다. 기본값은 거짓입니다. | True/False |
refresh-on-event |
폴링 기반 새로 고침을 활성화/비활성화할지 여부를 결정합니다. 기본값은 거짓입니다. | True/False |
refresh-interval |
새로 고칠 데이터를 가져오기 위해 새로 고침 스레드가 호출된 후의 시간 간격입니다. 기본값은 900초입니다. | - |
assembly-name |
배포된 캐시 로더 어셈블리의 사람이 이해할 수 있는 이름입니다. 기본적으로는 이름을 가리킨다. .DLL or 항아리 사용자가 자신의 클래스 라이브러리를 식별한 파일입니다. | - |
class-name |
구현 클래스의 이름 ICacheLoader 인터페이스. |
- |
full-name |
배포할 어셈블리의 이름입니다. | - |
name |
$XNUMX Million 미만 parameters 추가된 매개변수의 이름입니다. |
- |
value |
$XNUMX Million 미만 parameters 추가된 매개변수의 값입니다. |
- |
name |
$XNUMX Million 미만 dataset 추가된 데이터셋의 이름입니다. 이것은 독특한 string . |
- |
schedule-expression |
데이터 세트의 일정 표현식을 새로 고칩니다. 이 표현식은 분, 시간, 일, 주 또는 월 단위일 수 있습니다. |
DailyInterval : 0:00:00:mm 럭셔리 DailyTime : 0:00:hh:mm 럭셔리 Weekly : 0:day(s):hh:mm:ss 럭셔리 Monthly : week(s):day(s):hh:mm |
schedule-option |
추가된 데이터 세트의 일정 옵션을 새로 고칩니다. | DailyInterval / DailyTime / Weekly /Monthly |
도 참조
.그물: Alachisoft.NCache.실행 시간 네임 스페이스.
자바 : COM.alachisoft.ncache.runtime.cacheloader 네임 스페이스.