web-dev-qa-db-ja.com

どのJMS実装を使用していますか?

選択の実装として ActiveMQ 5.2 を使用しており、しばらく前にそれを選択しました。現在、私たちが使用するのに十分なパフォーマンスです。しばらく前から、他にどのようなJava Message Service実装が使用されているのか、そしてその理由は何ですか?確かにいくつかあります。

46
Jay R.

JMSを掘り下げる前に、AMQPも検討してください。これは新しい標準かもしれません。私が使用したJMSプロバイダー(さまざまな程度):

TIBCO EMS-非常に迅速で堅牢な、優れたAPIサポート、JavaフレンドリーなネイティブC APIが存在します。私が使用した中で最も優れた商用の選択肢です。

Websphere MQ(およびそのJMS実装)-そうです。 Pub/subは正確ではありません。多くの構成オプションと選択は「奇妙」で、その製品の長い歴史から見ると非常に複雑です。ドキュメントの量を見てください...

Solace JMS-非常に高いスループット(JMSブローカーはハードウェアに組み込まれています)、接続プロトコル(MQTT、AMQP、管理プロトコルとしてのHTTP経由のXML)の適切な選択

Fiorano MQ-以前はマーケティングに積極的でしたが、市場シェア、成熟度の懸念の多くを失いました

Sonic MQ-固体製品、C APIもサポート

アクティブMQ-オープンソース製品(安価なサポート、優れたコミュニティ、限られたアドオン製品、限られたエンタープライズ機能)を使いたい場合、これがおそらく最良の選択です。そのまま使用でき、たとえばApache Camelなどのいくつかのツールのバックボーンです。

16
Axel Podehl

Camelフレームワークを介してAMQ(5.1)に依存しており、問題は発生していません。 AMQ 4は少し怪しげでした。

8
larsivi

WebLogicを使用する場合のWebLogic JMSプロバイダー。よく働く。

6
Pascal Thivent

TIBCO EMS 。これは、Java/JMS、C、.net、およびその他のバインディングを備えた商用メッセージサービスです。

5
John Meagher

SunのオープンソースOpenMQ( https://mq.dev.Java.net/ )。あなたは同じために無料と有料のサポートを受けることができます。

ActiveMQなどとの比較については、このブログ投稿を参照してください http://alexismp.wordpress.com/2008/06/06/openmq-the-untold-story/

OpenMQの方が安定していると聞きました。

ActiveMQはより柔軟です。のように、より多くの言語で使用できます。おそらくActiveMQのメーリングリストには、OpenMQよりも多くの人がいます。

5
anjanb

最近のプロジェクトの1つで、私たちは Sonic MQ を使用しました。 .NETへの適切なバインディングによる全体的な実装。

スケーラビリティの問題は少しありましたが、スケーラビリティの要件が非常に厳格であることを認めなければなりません。正しくリコールできれば、200の異なるクライアント間で遅延を許さずに20,000が1秒で混乱する(すべてのクライアントがすべてのメッセージを受信する必要があった)同時に)。

3
Sergio Acosta

私はJBossMQを使用しました。これはバージョン4までのJBossアプリサーバーに付属しており、安定していますが制限があります。 JBossメッセージングは​​代替であり、JBossAS 5に付属しており、大幅な改善です。

ActiveMQ私は本当に嫌いです。開発者はパフォーマンスと機能を追求して安定性を損なったようで、驚くほどバグが多いです。 GeronimoのJMSファブリックであることを考えると、心配です。

3
skaffman

IBM WebSphere MQ 5および6 Active MQ 5.2.0

http://codingjunky.com/page5/page4/page4.html にあるMicro QueueManagerも確認してください。これは小さく、簡単にインストールでき、小規模なプロジェクトで使用できます。

2
Autobyte

SonicMQ、JBossMQ、およびLotus Expeditor Integratorの「マイクロブローカー」を使用しています。さまざまな目的で使用しています。

-JBossMQは内部で使用され、JBossで実行されるすべてのJava EEアプリケーションから通信します。-LotusExpeditorは、限られたリソースとITスタッフしかいない「リモートサイト」で使用されます- SonicMQはメッセージングバックボーンであり、セントラルシステムの接続に使用しますが、約1000サイトのリモートシステムの接続にも使用します。

私たちはそれらすべてで良い経験をしていますが、私たちの経験は、より複雑な環境ではメッセージングシステムのより積極的な管理を行わなければならないということでもあります。これは、私たちのサイトのSonicMQで特に当てはまりました:-)。パフォーマンスの観点から、特にキューベースの永続メッセージングでSonicMQを使用して最高のエクスペリエンスを実現しました。

1
roundrobin

ActiveMQを本番環境で数年間使用してきましたが、その安定性については特に満足できませんでした(特に、クラスター化が有効になっている場合)。 OpenMQに切り替えた後、振り返ることはありませんでした。 RabbitMQまたはZeroMQを調べてみてください。

1
Felipe Oliveira