私はActiveMQ 5.8.0
自分のプロジェクトで使用しようとしています。と の 2 つの異なるストレージ構成がKahaDB
ありLevelDB
ます。問題によっては、Kaha が Level より速くなったり、Level が Kaha より速くなったりします。
それらの本当の違いは何ですか?
私はActiveMQ 5.8.0
自分のプロジェクトで使用しようとしています。と の 2 つの異なるストレージ構成がKahaDB
ありLevelDB
ます。問題によっては、Kaha が Level より速くなったり、Level が Kaha より速くなったりします。
それらの本当の違いは何ですか?
2 つのストアは、どちらもインデックスを使用して、Journal に書き込まれたメッセージの場所と状態を追跡するという点で似ています。相違点は、特にインデックスの実装方法にあります。LevelDB は KahaDB よりもわずかに高速なインデックスであり、多少優れたパフォーマンス数値を提供できます。ActiveMQ の以降のリリースでは、LevelDB ストアもレプリケーションをサポートしています。
LevelDBストアの実装がまだ非常に若い古いリリースを使用していることを考えると、KahaDBの方がはるかに成熟しており、初期のバグの多くが解決されているため、KahaDBに固執することをお勧めします. 5.8 の LevelDB ストアは実際には本番環境に対応しておらず、おそらく問題が発生する可能性があります。最新リリースの v5.10 に移行すると、LevelDB がより堅牢になります。
注: LevelDB はコミュニティによって廃止され、サポートされなくなりました。ActiveMQ 5.17.0 で完全に削除される可能性があります。
新しいプロジェクトでは、LevelDB for ActiveMQ には近づかないでしょう。KahaDB、LevelDB の図は多少変更されました。
LevelDB ストアは廃止され、サポートも推奨もされなくなりました。おすすめ店はKahaDB
これは、LevelDB のドキュメント ( http://activemq.apache.org/leveldb-store.html ) で確認できます。
そのため、KahaDB、LevelDB の図は多少変更されました。3 つの Zookeeper インスタンスによって監視される 3 つの ActiveMQ インスタンスを備えた本番セットアップに LevelDB を使用することを検討しました。プロトタイプは非常にうまく機能しましたが、ActiveMQ インスタンスのクラッシュをシミュレートするとき、そのインスタンスの再起動中に LevelDB の破損が時折発生しました。
永続的なメッセージングが必要な場合は、次の選択肢があります。