web-dev-qa-db-ja.com

どの組み込みメッセージングシステム-> ActiveMQまたはHornetQ

2つのメッセージングシステムのどちらがどちらであるかに関するいくつかの一般的なポインタと意見をいただければ幸いです

  • 管理が簡単
  • 知って避ける必要のある落とし穴や魔法のようなものが少ない
  • 全体的な依存関係が少ない
  • 作業は簡単です。
35
mP.

管理が簡単

hornetQには管理用の明確なAPIがあり、非常に使いやすいです。

知って避ける必要のある落とし穴や魔法のようなものが少ない

hornetQは埋め込みケース用に作成されました。それをコードに統合するのは非常に簡単です。実際のところ、10行未満のコードでそれを行うことができます。

全体的な依存関係が少ない

HornetQのすべてがモジュール式です。 HornetQに必要な唯一の依存関係は、ネットワークプロバイダーであるNettyです。

作業は簡単です。

HornetQの使い方はとても簡単です。明確なAPI、そして主に、ドキュメントは非常に完全です。

HornetQを使用するために本を購入する必要はありません。すべてのドキュメントは、hornetqのWebサイトに無料で掲載されています。

34
Clebert Suconic

まず、私は偏見があります。私はHornetQプロジェクトの創設者ですが、もう取り組んでいません。

ActiveMQよりもHornetQを使用する理由ここにいくつかの正当な理由があります:

  1. HornetQはActiveMQよりも大幅に高速です。 http://community.jboss.org/wiki/HornetQPerformance

    実際、HornetQは、市場で最速のエンタープライズメッセージングシステムです。または、少なくとも、昨年市場に対してテストしたときでした。 (上位11かそこらのJMS実装に対してテストしました)

  2. 特徴。 HornetQには、完全な「エンタープライズ」機能セットがあります。機能リストはこちら http://community.jboss.org/wiki/HornetQFeatures

    HornetQには、ActiveMQにあるほとんどの機能と同等の機能があり、ActiveMQにはない他の機能もあります。

  3. クラスタリングは最近オーバーホールされたため、堅実です。クラスタリングに不満がある場合は、フォーラムを使用してください。 HornetQチームは、認識された問題に喜んで対応します。

  4. 大規模な金融機関やlast.fmなどの他の有名な名前で本番環境で使用されています

  5. JBoss AS7のコアメッセージングテクノロジーとして十分に信頼されています。世界的に人気のあるJavaアプリケーションサーバーの最新バージョン。

  6. プロトコルにとらわれないアーキテクチャ。 HornetQは、ActiveMQとは異なり、JMSを中心に構築されていません。 HornetQでは、コアサーバーはプロトコル/ APIに依存しません-それは一般的なメッセージングサーバーです。 STOMP/JMS/REST/Websocketsなどのさまざまなプロトコル/ APIがシンアダプターとして汎用コアに追加されます。これにより、柔軟性が大幅に向上します。

47
user786918

私は日常業務でActiveMqを非常に頻繁に使用しており、あなたが上げたほとんどのポイントで非常に高く評価しています。私は特にJMX管理コンソールに依存しています。これはトップクラスです。

私もHornetQを注意深く見守っていますが、いつかそれに対するサポートも追加されるかもしれません。私が見ることができることから、HornetQは少し軽量であり、いくつかの本当に素晴らしいNIO最適化があり、それはそれを飛ばすはずです。ただし、ActiveMQによって提供されるエンタープライズ統合機能の一部、および場合によっては管理機能の一部が不足しています。しかし、私が見ることができることから、HornetQチームはギャップを埋めるために一生懸命働いています。

私の意見では、どちらの選択でもあなたが間違ったことをすることはできないと思います。両方を試して、どちらが気分が良いかを確認してください。

9
alexr

ActiveMQを決定する前に、両方の広範な評価を行いました。これは実証済みで安定しており、メッセージングシステムに必要なものです。私は2つの大規模システムでActiveMQを使用して、大きな成功を収めました。 HornetQがActiveMQよりも高速であると主張したとき、しばらく前にいくつかの誇大宣伝があったので、私は調べました。 HornetQには、クラスタリングにいくつかの重大な欠陥があり、メッセージが失われ、サーバーが障害のあるノードに無期限に接続しようとする可能性があります。 HornetQの主任開発者は、HornetQの欠陥を認識することを拒否し、ユーザーフォーラムでかなり防御的になります。これは、製品に非常に警戒する必要があります。

4
wave9x

Apache ActiveMQ Artemisが最適です

HornetQコードベースはApacheActiveMQプロジェクトに寄付され、HornetQコミュニティはそのプロジェクトに参加して、寄付されたコードベースを強化し、次世代のメッセージングブローカーを作成しました。その結果がApacheActiveMQArtemisです。

0
VHS