問題タブ [jboss-messaging]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jboss - JBoss 5 で EJB と JMS キュー構成のデプロイメントを注文するには?
JBoss [EAP] 5.0.0.GA を使用しています。使用する JMS キューの存在に依存する MDB をいくつか含む EJB jar を含む EAR があります。キューを構成したとき.../server/all/deploy/messaging/myqueues-service.xml
、問題はありませんでした。
ただし、JBoss 構成を直接変更する必要がないように、EAR ファイルでキューを構成したいと考えました。問題ありません。myqueues-service.xml
ファイルを EAR のルートに配置し、jboss-app.xml
次のように my への参照を追加しました。
ただし、これを行うと、JBoss は最初に EJB jar (my-ear.ear に含まれる) をロードし、その後で JMS キューを構成します。これにより、MDB のロード時にエラーが発生します。
後で MDB が JMS に正常に再接続されるため、これは大きな問題ではありません。
しかし、エラーが発生することは避けたいと考えています。そのためには、EJB jar をロードする前に JBoss に強制的に JMS キューを設定させる方法が必要です。これを行う方法はありますか?参考までapplication.xml
に、EAR の を次に示します。
任意の提案をいただければ幸いです。
java - JMS トピックでキューに入れることができるメッセージの数は?
私の Web アプリには、常に多くのメッセージを受信する JMS トピックがあります。メッセージを処理し、メッセージ データに基づいてデータベースを更新する MDB があります。org.hibernate.exception.LockAcquisitionException
トピックが複数のメッセージを同時に受信しているときに取得していたので、MDB の maxSessions 属性を 1 に変更してシングルトンにしました。
現在、Hibernate の例外は表示されなくなりましたが、パフォーマンスに懸念があります。問題が発生する前に、トピックがどれくらい大きくなると予想できますか? JBoss 4.3 EAP を使用しており、これを設定する方法を検索しようとしましたが、何も見つかりませんでした。Java がメモリ不足になるまでトピックのサイズは大きくなりますか、それとも JBoss で設定できるものですか?
jboss - JBoss Messaging は永続性を無効にします
いくつか質問があります 1. JBoss Messaging の永続性を無効にするにはどうすればよいですか? 2. 永続化が正常に無効化されたことを確認する方法はありますか? (MBean など) 3. すべての JBoss Messaging ではなく、指定されたキューの永続性を無効にするのに役立つトリックを誰かが知っているかもしれません。
私を手伝ってくれますか :)
エンタープライズ プラットフォーム 4.3.0GA_CP06
jboss - jboss MQがプリインストールされているJBossかどうかを知る方法は?
すでにjboss4.2.3を設定しましたが、jboss-mqを使用する必要があります。デフォルトのサーバーインスタンスのdeplotdirを調べましたが、jmsdirが見つかりませんでした。このjbossにjboss-mqが付属しているかどうか、およびサーバーインスタンスに必要なすべてのファイルがどこにあるかを知るにはどうすればよいですか。hornetmqには、jbossがhornetと連携するように設定するインストールスクリプトが付属していることを知っていますが、jboss-mq用のスクリプトはありますか?
persistence - JBoss Messaging Queue Stuck、リモートインターフェイスとMDBコンシューマー
私は環境問題の可能性を診断して修正しようとしています。開発サーバー、SIサーバー、本番サーバーがあり、それらは数年間同じようにセットアップされています。特定のJBMキューで環境の1つが機能しなくなりましたが、これまでのところ、その理由を理解できていません。
JMXコンソールで確認しているのは、メッセージが配信状態で「スタック」していることです。MessageCountとDeliveringCountは、メッセージがキューを介して送信されるたびにインクリメントします。コンシューマーのonMessage()が呼び出され、デバッグメッセージがlog4jログに出力されますが、リクエストが完了するとは思いません。
これは永続的なJBMセットアップです。JBossServerを再起動しても効果はありません。JBM_ *テーブルをクリアしたり、削除したりしても役に立ちません。
jbm_msg_refエントリのtransaction_idはnullで、状態は「C」です。これは、使用するoracle-persistence-service.xmlのプリペアドステートメント「ROLLBACK_MESSAGE_REF2」によってこの状態になっているようです。
MDBコンシューマーのMaxPoolSizeは15であり、これはコンシューマーインスタンスによって受信されるメッセージの最大量でもあります。15を過ぎると、キューが「いっぱい」になり、メッセージを受信するために使用できるコンシューマーMBeanがなくなります。
問題を診断して修正する方法についてのアイデアや提案を探しています。私は数日間グーグルで何かを試してきましたが、ほとんど結果がありませんでした。このかなり古いバージョンのJBMにはたくさんのJIRAチケットがありますが、同じセットアップの他のインスタンスは正常に機能するため、この1つのサーバー/ DBコンボに何らかのネットワーク、競合状態、または環境の問題があると思われます。
JBoss Remoting 4.3.0.GA JBoss Messaging 1.4.0.SP3 JBoss 4.3.0.GA
ありがとう!
jms - HornetQ を使用した JMS Connection/ConnectionFactory 参照
私は古いアプリケーションに取り組んでおり、その JMS システムを JBoss Messaging から HornetQ にアップグレードしています。その過程で、このアプリケーションが JMS 接続を使用および管理する方法に関連していると思われる問題に遭遇しました。これは JMS への初めての大規模な露出 (単純なおもちゃの使用法を除く) であり、現在のイディオムが正しいのか、ばかげているのか、それとも完全に間違っているのか疑問に思っています。
これが現在のシステムの仕組みです。
これの要点は、エラーが発生するまで、送信されるすべてのメッセージに対して接続が何度も使用され、エラーが発生すると、接続が最終的に閉じられて再作成されることです。
私が見たすべての例は、すべてのメッセージに対して常に新しい接続ファクトリと新しい接続を作成しますが、これらの例は大きなシステムの例ではなく、「ハウツー」の例の 1 つです。
接続ファクトリをキャッシュする必要がある場合、JMS 接続への単一の管理された参照を維持することは受け入れられるイディオムですか? 新しいメッセージごとに両方を再作成する必要がありますか?
接続ファクトリを再利用するのは理にかなっていますが、毎回新しい接続を使用しますか?
spring - SpringJmsTemplateを使用してJMSメッセージがキューに到達するのを遅らせる方法
私が理解しているように、これはキューサーバープール内のスレッドを「拘束」するため(複数のキューが構成されているため)、レシーバータイムアウトでメッセージコンシューマーをブロックしたくありません。では、カスタムスレッドなしでメッセージが送信されるのを遅らせるにはどうすればよいですか(作業はEJB 2セッションBeanによって実行されています)?それが役立つ場合は、JBossMessaging1.xがプロバイダーです。
java - JBoss Messaging 1.4.3 デッドロック
4 つのノードで JBoss 5.1.0.GA クラスター化セットアップを実行しています。これは、JBoss Messaging 1.4.3 を使用して、他のアプリケーションからメッセージを受信し、これらの JBoss インスタンスにデプロイされたアプリケーション内で処理します。JBoss メッセージングがデッドロックになったように見え、メッセージがキューに存在するにもかかわらず、JBoss がメッセージの処理を停止するという問題に遭遇しました。これが発生する理由について、ログに明確なエラーはありません。これはしばらくの間 (~1 週間) 発生し、どのような種類のテスト環境でも簡単に再現することはできません。
これはJava 6を使用してCentOS5で実行されています。
根本原因を突き止めるために各ノードからスタック トレースを取得しましたが、これらから有用なものを得ることができませんでした。
デプロイされたアプリケーションに最近いくつか変更を加えましたが、スレッド ダンプのどのスレッドにもアプリケーション コードが表示されません。影響を与える可能性のある最近行われたもう 1 つの変更は、新しい netty jar である netty-3.6.3.Final.jar を /common/lib にデプロイすることでした。
ここにスレッド ダンプを含めました: Thread Dump
どんな提案でも大歓迎です!
ibm-mq - メッセージの送信中に「MQCC_FAILED」理由「2072」「MQRC_SYNCPOINT_NOT_AVAILABLE」を取得中
MQ 7.0 キューをリッスンする JBoss 5.1 GA に MDB (mdbA) があります。受信後、メッセージは MySQL データベースに永続化されます。メッセージを別のキュー (queueB) に送信してから、mdbA でメッセージの処理を続行し、さらに挿入を行ってメッセージを HornetQ に送信したいと考えています。最初のメッセージはすべて正常に機能し、データベース、キュー B、および hornetQ にメッセージが表示されます。後続のすべてのメッセージで、「キュー B に送信」すると「MQRC_SYNCPOINT_NOT_AVAILABLE」エラー 2072 が発生します。
私の mdbA には次の注釈があります。@TransactionAttribute (TransactionAttributeType.REQUIRED) @Service
さらに情報を提供する必要がある場合はお知らせください。
誰か助けてくれませんか?