検索

121.6. HawtDB

download PDF

Camel 2.3 の時点で利用可能

HawtDB は非常に軽量で埋め込み可能なキー値データベースです。これにより、Camel とともに Aggregator などのさまざまな Camel 機能に永続的なサポートを提供できます。

非推奨

HawtDB プロジェクトは非推奨となり、軽量で埋め込み可能なキー値データベースとして leveldb に置き換えられます。leveldb を簡単に使用するには、leveldbjni プロジェクトがあります。Apache ActiveMQ プロジェクトは、今後は kahadb に代わる主要なファイルベースのメッセージストアとして leveldb を使用する計画です。

これの代わりに使用する camel-leveldb コンポーネントがあります。

HawtDB 1.4 以前の問題

HawtDB 1.4 以前にはバグがあり、filestore では未使用の領域が解放されません。これは、ファイルが拡大中であることを意味します。これは、Camel 2.5 以降に同梱される HawtDB 1.5 で修正されました。

提供されている現在の機能:

  • HawtDBAggregationRepository

121.6.1. Using HawtDBAggregationRepository

HawtDBAggregationRepositoryAggregationRepository で、集約されたメッセージを即座に永続化します。これにより、デフォルトのアグリゲーターは 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 Aggregator の自動リカバリーの失敗されたエクスチェンジのリカバリーを有効にして、再提出します。

recoveryInterval

Long

リカバリーが有効になっている場合、バックグラウンドタスクは、失敗したエクスチェンジをスキャンして再送信するために、失敗したエクスチェンジをスキャンするたびに実行されます。デフォルトでは、この間隔は 5000 ミリ秒です。

maximumRedeliveries

int

リカバリーされたエクスチェンジの再配信試行の最大数を制限できます。有効にすると、再配信の試行に失敗した場合、エクスチェンジはデッドレターチャネルに移動します。デフォルトでは、このオプションは無効になっています。このオプションを使用する場合は、deadLetterUri オプションも指定する必要があります。

deadLetterUri

文字列

リカバリーされたエクスチェンジが移動される Dead Letter Channel のエンドポイント URI。このオプションを使用する場合は、max Redeliveries オプションも指定する必要があります。

optimisticLocking

false

Camel 2.12: 楽観的ロックを有効にするには、複数の Camel アプリケーションが同じ HawtDB ベースの集約リポジトリーを共有するクラスター環境で必要になることがよくあります。

repositoryName オプションを指定する必要があります。次に persistentFileName または hawtDBFile のいずれかを指定する必要があります。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.