問題タブ [apache-nms]
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.
activemq - Apache.NMS APIを使用してActiveMQキューをプログラムでパージするにはどうすればよいですか?
Apache.NMS(C#)を使用してプログラムでキューをパージする機能が必要です。NMS APIを調べてきましたが、そのような機能はありません。それは存在しますか?
c# - Visual StudioではなくMSBuild3.5からコンパイルする型推論の失敗(CS0246)
コマンドラインから最近の変更をコンパイルするときに、ビルドサーバーで興味深いエラーが発生しました。
c:\ Windows \ Microsoft.NET \ Framework \ v3.5 \ MSBuild.exe
エラーCS0246:タイプまたは名前空間名'var'が見つかりませんでした(usingディレクティブまたはアセンブリ参照がありませんか?)
問題のコード:
_producerErrors
ApacheのIMessageProducerのタイプです。NMSはITextMessageのタイプです。
response
Visual Studioから正常にコンパイルされ、コマンドラインからローカルでエラーを再現できることに注意してください。これにより、ビルドサーバーの構成の問題が除外されると思います。
もちろん、修正は簡単ですが、MSBuildコマンドラインからのみコンパイルが失敗する理由について私は困惑していますか?問題のプロジェクトには、問題var
なくコンパイルされている他のキーワードが使用されているので、Apacheアセンブリと関係があるのではないかと思いますが、どうでしょうか。
apache - Apache NMS を使用した大きなファイルの転送
Apache NMS を介して (ActiveMQ を使用して) 大きなファイルを転送する場合、現在、いわば最先端と見なされているものは何ですか? コンテンツ全体を StreamMessage に入れますか? ただし、ファイルは実際には JMS 経由でストリーミングされず、コンテンツ全体がメモリ (またはディスク?) に存在し、一度に送信されるため、ここでの命名は少し誤解を招くものであることがわかりました。ここで、100 MB を超えるファイルで問題が発生しました: Apache.NMS.NMSException : Unable to write data to the transport connection: An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full
.
BlobMessage は NMS ではサポートされていません...ファイルをチャンクに分割し、反対側で再構築する以外に選択肢はありません。
ありがとう、クリスティアン。
activemq - ActiveMQ コンシューマーがプリフェッチではなくプル モードに回復する理由
最近 NMS ActiveMQ 1.5.2 にアップグレードしました。ブローカーを再起動すると、接続とコンシューマーは復元されますが、「プル」モードに復元されます。つまり、ブローカーはメッセージを自動的に送信しません。これは、以前のバージョンの動作とは異なります。私が必要としているのは、プリフェッチ 1000 だった元の状態に回復することです。フェイルオーバー URL などの設定が欠落しているに違いないと思います。
ここで私が何を試すことができるか知っている人はいますか?
私のスタックは次のとおりです。
ブローカーを再起動したときに表示されるコンシューマー ログ エントリは次のとおりです。
c# - ApacheNMS-接続が確立されているかどうかを判断する方法
私はいくつかのApacheNMSの問題で大変な時間を過ごしています。これの一部は、プラットフォームについての私自身の理解の欠如である可能性があります。
基本的に、STOMPを介してAMQメッセージを送受信するために使用するNMSSTOMPクライアントがあります。APIは次のようになります。
統合テストを一貫して合格させようとしていますが、AMQがダウンしている時間を増やすと、常に失敗します(10秒で合格、60で失敗)。膨大な量のデバッグとトレースを行った後、問題は私のIsConnected
実装に起因しているように見えることがわかりました(または、少なくとも、これは問題の一部です)。
試行錯誤しながらこの実装にたどり着きました。接続が「アップ」であるかどうかを判断する簡単な方法を見つけることができませんでした。私が見つけることができるか、それが私にこれを教えてくれるプロパティはありIConnection
ませSession
ん。
ConnectionInterruptedListener
、、、ConnectionResumedListener
およびイベントを認識してExceptionListener
いますが、統合テスト中に発生したのは。だけですExceptionListener
。さらに、私が本番環境で使用しているフェイルオーバーを使用しても、それらはまったく発生しないことを理解しています。
接続が確立されているかどうかを確実に判断するのを誰かが助けてくれますか?それとも、私が持っているかもしれない誤解を解消しますか?
c# - Active MQコンシューマーが、オンラインであってもメッセージを受信しないのはなぜですか?
- 消費者が作成しました。
- プロデューサーが作成しました。
- メッセージが送信されました。
- キューにエンキューされたメッセージ。
- ただし、Msgはデキューされません(そのキューのコンシューマーがオンラインになっている場合でも)。
システムに記録されたエラーはありません。それで、それの理由は何でしょうか?
c# - ActiveMQ 一時キューに対してコンシューマーが作成されないのはなぜですか?
SimpleMessageListenerContainer
オプションを除いて、コンシューマーは一時キュー用に作成されません。SimpleMessageListenerContainer
ここで直面するいくつかの問題には使用しません。
次のコードが機能していません...(一時キューが作成されていない場合でも)
次のコードは機能しています:-しかし、キューは一時キューではなく永続キューのようです
上記のコード (NmsDestinationAccessor を使用) では機能していますが、永続的なキューが作成されます。したがって、一時キューの返信先を直接使用すると、機能しません。
activemq - ActiveMQ NMS: ブローカーがダウンしている場合、connection.start() がフェイルオーバー プロトコルでハングする
nms.activemq 1.5.0 を使用する C# アプリケーションがあります。
アプリケーションが起動すると、フェイルオーバー プロトコルを使用してブローカーに接続しようとします (マスター/スレーブ構成で 2 つのブローカーを使用しています)。
両方のブローカーが停止すると、connection.start()
.
Webで見つけたすべての情報を試しました-フェイルオーバープロトコルのすべての属性を試し、接続タイムアウトの設定も試しtransport.requesttimeout
ました.
nms.activemq の新しいバージョンも試しましたが、問題が解決されないようです。
この問題または回避策の原因について何か考えはありますか?
.net - .NETでのActiveMQ接続開始タイムアウト
ActiveMQ用の.Netクライアントがあります。Apache.NMS1.5.1.2739とApache.NMS.ActiveMQ1.5.6.2746を使用しています
次のコードを使用してブローカーに接続します。
問題は、使用可能なActiveMQブローカーがない場合、connection.Start()が永久にハングすることです。したがって、transport.timeoutはここでは役に立ちません。Start()メソッドのタイムアウトが必要です。したがって、この期間が経過すると例外が発生し、実行がさらに進む可能性があります。そのような問題を回避する方法は?