156장. ignite 캐시 구성 요소
Camel 버전 2.17에서 사용 가능
Ignite Cache 엔드포인트는 Ignite 캐시와 상호 작용할 수 있는 camel-ignite 끝점 중 하나입니다. 이를 통해 Producer(Ignite 캐시에서 캐시 작업을 호출) 및 소비자(지속적 쿼리의 변경 사항 사용)를 모두 제공합니다.
캐시 값은 항상 메시지의 본문이지만 캐시 키는 항상 IgniteConstants.IGNITE_CACHE_KEY
메시지 헤더에 저장됩니다.
끝점 URI에서 고정 작업을 구성하더라도 IgniteConstants.IGNITE_CACHE_OPERATION
메시지 헤더를 설정하여 해당 작업을 변경할 수 있습니다.
156.1. 옵션
Ignite Cache 구성 요소는 아래에 나열된 4 가지 옵션을 지원합니다.
이름 | 설명 | 기본 | 유형 |
---|---|---|---|
ignite (공용) | Ignite 인스턴스를 설정합니다. | ignite | |
ConfigurationResource (공용) | 구성을 로드할 위치에서 리소스를 설정합니다. URI, 문자열(URI) 또는 InputStream일 수 있습니다. | 개체 | |
igniteConfiguration (일반) | 사용자가 프로그래밍 방식의 IgniteConfiguration을 설정할 수 있도록 허용합니다. | IgniteConfiguration | |
resolveProperty Placeholders (advanced) | 구성 요소 시작 시 속성 자리 표시자를 자체적으로 확인해야 하는지 여부입니다. String 유형의 속성만 속성 자리 표시자를 사용할 수 있습니다. | true | boolean |
Ignite 캐시 끝점은 URI 구문을 사용하여 구성됩니다.
ignite-cache:cacheName
다음 경로 및 쿼리 매개변수를 사용합니다.
156.1.1. 경로 매개변수(1 매개변수):
이름 | 설명 | 기본 | 유형 |
---|---|---|---|
cacheName | 캐시 이름입니다. | 문자열 |
156.1.2. 쿼리 매개변수 (16 매개변수):
이름 | 설명 | 기본 | 유형 |
---|---|---|---|
propagateIncomingBodyIfNo returnValue (common) | 기본 Ignite 작업의 반환 유형이 유효하지 않은 경우 들어오는 본문을 전파할지 여부를 설정합니다. | true | boolean |
treatCollectionsAsCache 개체 (공용) | 컬렉션을 캐시 개체로 처리할지 또는 삽입/업데이트/컴퓨팅 등을 위한 항목의 컬렉션으로 설정할지 여부를 설정합니다. | false | boolean |
autoUnsubscribe (consumer) | 연속 쿼리 소비자에서 자동 구독 취소가 활성화되었는지 여부입니다. | true | boolean |
bridgeErrorHandler (consumer) | Camel 라우팅 오류 처리기에 소비자를 브리징할 수 있습니다. 즉, 소비자가 들어오는 메시지를 선택하려고 하는 동안 발생한 모든 예외가 이제 메시지로 처리되고 라우팅 오류 처리기에서 처리됩니다. 기본적으로 소비자는 org.apache.camel.spi.ExceptionHandler를 사용하여 WARN 또는 ERROR 수준에서 기록되고 무시됩니다. | false | boolean |
fireExistingQueryResults (consumer) | 쿼리와 일치하는 기존 결과를 처리할지 여부입니다. 연속 쿼리 소비자를 초기화하는 데 사용됩니다. | false | boolean |
oneExchangePerUpdate (consumer) | 각 업데이트를 하나의 일괄 처리로 수신하더라도 개별 교환에서 각 업데이트를 패키지할지 여부입니다. 연속 쿼리 소비자만 사용합니다. | true | boolean |
pageSize (consumer) | 페이지 크기입니다. 연속 쿼리 소비자만 사용합니다. | 1 | int |
쿼리 (consumer) | 실행할 쿼리, 이 쿼리가 필요한 작업 및 지속적 쿼리 소비자에만 필요합니다. | 쿼리 | |
remoteFilter (consumer) | 지속적 쿼리 소비자만 사용하는 원격 필터입니다. | CacheEntryEvent SerializableFilter | |
timeInterval (consumer) | 연속 쿼리 소비자의 시간 간격입니다. | 0 | long |
exceptionHandler (consumer) | 사용자가 사용자 지정 ExceptionHandler를 사용하도록 하려면 다음을 수행합니다. bridgeErrorHandler 옵션이 활성화되어 있으면 이 옵션이 사용되지 않습니다. 기본적으로 소비자는 WARN 또는 ERROR 수준에서 기록되고 무시됩니다. | ExceptionHandler | |
exchangePattern (consumer) | 소비자가 교환을 생성할 때 교환 패턴을 설정합니다. | ExchangePattern | |
cachePeekMode (producer) | CachePeekMode는 필요한 작업에만 필요합니다(IgniteCacheOperation#SIZE). | ALL | CachePeekMode |
failIfInexistingCache (producer) | 캐시가 없는 경우 초기화 실패 여부를 나타냅니다.Indicates whether to fail the initialization if the cache doesn't exist. | false | boolean |
작업 (producer) | 호출할 캐시 작업입니다. 가능한 값: GET, PUT, REMOVE, SIZE, REBALANCE, QUERY, CLEAR. | IgniteCacheOperation | |
동기 (고급) | 동기 처리를 엄격하게 사용해야 하는지 또는 Camel이 비동기 처리를 사용할 수 있는지 여부를 설정합니다(지원되는 경우). | false | boolean |