2017-01-26 9 views
1

私たちはhttp要求を受け入れ、activemqを使ってpub-sub jmsに処理を委譲するgrails webアプリケーションを持っています。ビューのオープンセッションはどのようにjms接続/セッションで動作しますか?

メッセージを送信先に公開した後にhttp要求が返されるため、発行直後のOpen Session In Viewインターセプタトークンは閉じられていますか?

サブスクライバがactivemqキューからメッセージを処理し始めると(サービスメソッドはサブスクライバです)、トランザクション全体(サブスクライバサービスメソッド内に複数のトランザクションがあります)が単一のセッションになるか、またはセッションを開くための休止状態のテンプレート戦略単一のトランザクションの場合、コミット後にクローズされますか? もしそうなら、単一のjmsメッセージ処理のために、複数のセッションが開いたり閉じたりするでしょうか?

私はしばらく私の頭を傷つけていますが、解決することができません。どんな助けも役に立つでしょう!

+0

GrailsのJMSプラグインなどのプラグインは使用していますか?これはあなたの質問に答えるのに役立ちます。 –

+0

@JoshuaMooreはい私たちはgrails "jms:1.3"をプラグインとして使用しています。 –

答えて

0

ここにいくつか質問があります。

は最初の1で始まるのをしてみましょう:

...オープンセッションビューで迎撃トークンは、右の公開後に閉じていますか?

正常に閉じられます。 HTTP要求が終了したとき。 JMSメッセージのパブリッシュはこれに影響しません。

次へ:

加入者は、ActiveMQのキューからのメッセージの処理を開始すると...トランザクション全体が単一のセッションになりますか...?

答えはです。これはに依存します。これは、独自のコードでデフォルトの動作を変更できるため、依存します。ただし、メッセージを処理する単一のトランザクションサービスメソッドの最も一般的なパターンに従う場合、JMSプラグイン機能によって提供される1つのハイバネートセッションと、(サービスメソッドによって提供される)1つのトランザクションのみが使用されます。トランザクションと休止セッションの両方が終了します

+0

それで、メッセージを受信するためにブローカへの各jms接続に新しいハイバーネーションセッションがあるでしょうか? jmsセッションと休止状態セッションの関係を検索していますが、anyhingコンクリートが見つかりませんでした。どんな情報源が役に立つでしょう! –

関連する問題