128.6. HawtDB


Camel 2.3 사용

HawtDB 는 매우 가볍고 임베드 가능한 키 값 데이터베이스입니다. Camel과 함께 Aggregator와 같은 다양한 Camel 기능에 대한 지속적인 지원을 제공할 수 있습니다.

deprecated

HawtDB 프로젝트는 더 이상 사용되지 않으며, 구성 가능한 경량 키 값 데이터베이스로 leveldb 로 교체되고 있습니다. leveldb를 사용하기 쉽게 하려면 leveldbjni 프로젝트가 있습니다. Apache ActiveMQ 프로젝트는 향후 기본 파일 기반 메시지 저장소로 leveldb를 사용하여 kahadb를 교체할 계획입니다.

이 대신 사용할 것을 권장 하는 camel-leveldb 구성 요소가 있습니다.

HawtDB 1.4 이상

HawtDB 1.4 또는 그 이전 버전에서는 filestore가 사용되지 않는 공간을 확보하지 않음을 의미합니다. 즉, 파일이 계속 증가합니다. 이 문제는 Camel 2.5 이상과 함께 제공되는 HawtDB 1.5에서 해결되었습니다.

제공하는 현재 기능:

  • HawtDBAggregationRepository

128.6.1. Using HawtDBAggregationRepository

HawtDBAggregationRepository 은 즉시 집계된 메시지를 유지하는 AggregationRepository 입니다. 이렇게 하면 기본 집계기에서 메모리에서만 AggregationRepository 을 사용하므로 메시지가 느슨하지 않습니다.

여기에는 다음과 같은 옵션이 있습니다.

옵션유형설명

repositoryName

문자열

필수 리포지토리 이름입니다. 공유 HawtDBFile 을 여러 리포지토리에 사용할 수 있습니다.

persistentFileName

문자열

영구 스토리지의 파일 이름입니다. 시작 시 파일이 없는 경우 새 파일이 생성됩니다.

bufferSize

int

파일 저장소에 매핑되는 메모리 세그먼트 버퍼의 크기입니다. 기본값은 8mb입니다. 값은 바이트 단위입니다.

sync

boolean

HawtDBFile 이 쓰기 시 동기화되어야 하는지 여부입니다. 기본값은 true 입니다. 쓰기 시 동기화를 사용하면 모든 쓰기가 디스크에 스풀링될 때까지 항상 대기하므로 업데이트가 손실되지 않습니다. 이 옵션을 사용하지 않도록 설정하면 여러 쓰기를 일괄 처리할 때 HawtDB가 자동으로 동기화됩니다.

pageSize

short

메모리 페이지 크기. 기본적으로 512바이트입니다. 값은 바이트 단위입니다.

hawtDBFile

HawtDBFile

기존 구성된 org.apache.camel.component.hawtdb.HawtDBFile 인스턴스를 사용합니다.

returnOldExchange

boolean

get 작업에서 기존 Exchange가 존재하는 경우 반환되어야 하는지 여부입니다. 기본적으로 이 옵션은 집계 시 이전 교환이 필요하지 않으므로 최적화하려면 false 입니다.

useRecovery

boolean

복구 활성화 여부입니다. 이 옵션은 기본적으로 true 입니다. Camel 집계 자동 복구를 활성화하면 집계된 Exchange가 실패한 후 다시 제출할 수 있습니다.

recoveryInterval

long

복구가 활성화되면 xth 때마다 백그라운드 작업이 실행되어 복구 및 다시 제출하기 위해 실패한 Exchange를 스캔합니다. 기본적으로 이 간격은 5000밀리코어입니다.

maximumRedeliveries

int

복구된 교환에 대한 최대 재전송 시도 횟수를 제한할 수 있습니다. 이 기능을 활성화하면 모든 재전송 시도가 실패한 경우 Exchange가 dead letter 채널로 이동됩니다. 기본적으로 이 옵션은 비활성화되어 있습니다. 이 옵션을 사용하는 경우 deadLetterUri 옵션도 제공해야 합니다.

deadLetterUri

문자열

복구된 Exchange가 이동되는 Dead Letter 채널의 끝점 URI입니다. 이 옵션을 사용하는 경우 maximumRedeliveries 옵션도 제공해야 합니다.

optimisticLocking

false

Camel 2.12: 최적 잠금을 켜려면 여러 Camel 애플리케이션이 동일한 HawtDB 기반 집계 리포지토리를 공유하는 클러스터된 환경에서 종종 필요합니다.

repositoryName 옵션을 제공해야 합니다. 그런 다음 persistentFileName 또는 hawtDBFile 을 제공해야 합니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.