問題タブ [nservicebus]
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.
soa - SOA/メッセージングの実装にどのツールを使用していますか?
NServiceBusとMassTransitは、MSMQ やその他のメッセージ キューを使用したメッセージングを実装するために使用できる 2 つのツールです。
メッセージングを使用してアプリケーションが相互に通信し始めると、古い RPC スタイルに戻りたくないことがわかります。
私の質問は、他にどのようなツールがありますか? どのようなツールを使用しますか?
c# - 動的エンドポイントを持つ MSMQ を使用したサブスクライバー/パブリッシャー システムの実装
すべてのメッセージが投稿され、正しいサブシステムに公開されるフィードバック システムを作成しようとしています。キューを非常に静かに使用しているため、サブスクライバー コードをできるだけクリーンにしたいと考えています。メッセージ ID に基づいて切り替えて、フィードバック システムにアクセスし、特定のサブスクライバーに公開したいと考えています。各サブスクライバーがメッセージをリッスンするサービスを作成したくありません.各サブスクライバーにキューを設定し、トリガーしてcom +コンポーネントを呼び出すことができると考えていました..しかし、より現代的な方法を探しています. .
私はNServiceBusを調べていましたが、リスニングシステムごとにサービス/実行可能ファイル/Webサービスを作成する必要があるようです(C#dllを作成してメソッドを呼び出すための作業が少し少なくなります)、NServiceBusが処理できるかどうかわかりませんプリロードされた構成 (データベースからロードされた) に基づく動的エンドポイント。WCF も選択肢の 1 つです。確実に動的エンドポイントを処理できます。
新しいシステムがサブスクライブするためのコードのリース量/スケーラブルな最適なソリューションは何だと思いますか?
ありがとう
c# - nServiceBus、Rhino Service Bus、MassTransit - ビデオ、デモ、学習リソース
nServiceBus、Rhino Service Bus、MassTransit について、あなたが持っている、または知っているリソースについてぜひ教えてください。
- ビデオ?
- ブログ投稿?
- 本?
- デモプロジェクトなど
nservicebus - nServiceBus で複数のパブリッシャーからのメッセージをサブスクライブする
パブリッシャーのエンドポイントを指定せずに nServiceBus を使用して、タイプのすべてのメッセージをサブスクライブできるかどうか疑問に思います。
この背景には、nServiceBus のディストリビューター インフラストラクチャを使用して、ネットワーク上の分散ワーカーにサブの問題を委任する分散アルゴリズムがあります。
タスクが終了したら、ワーカーは送信者に通知するメッセージを送信する必要があります。
IBus.Reply() を使用して通知することもできますが、これらのメッセージにも関心のあるいくつかの監視およびログ サービスもあります。受信したすべての返信を送信者に再公開させるのは正しくないように思えます。
nServiceBus で複数のパブリッシャーからのメッセージを購読できますか?
c# - NServiceBus遅延メッセージ処理
NServiceBusアプリケーションがあり、外部イベントが発生していないために特定のメッセージが処理されない場合があります。この他のイベントはNSBイベントではないため、sagasを適切に実装できません。
ただし、メッセージを再キューイングするだけでなく(外部イベントが発生するまでループが発生します)、メッセージを別のメッセージ(DelayMessage)でラップし、代わりにキューイングします。DelayMessageは別のサービスによって取得され、再試行間隔が終了するまでデータベースに配置されます。その時点で、遅延サービスはメッセージを元のキューに再キューイングするため、別の試行を行うことができます。
ただし、その外部イベントがまだ発生していない場合、これは複数回発生する可能性があります。それが発生しない場合でも、メッセージの往復回数を制限したいと思います。これは、DelayMessageにMaxRetriesプロパティがあることを意味しますが、遅延サービスが再試行のために元のメッセージをキューに入れると、それは失われます。
他にどのようなオプションがありませんか?この問題にはまったく異なる解決策があることを喜んで受け入れます。
c# - NSB を WCF 経由でブリッジする
NSB ホストに送信する WCF サービスを公開しようとしています。NSB サンプルで WebServiceBridge の例を見てきましたが、対応する WCF で NServiceBus.WcfService クラスを使用する方法がわかりません。
サービス インターフェイスに 1 つ以上の IWcfService < TRequest, TResponse > を継承させることができることがわかりましたが、サービス クラスは複数の基本クラス (WcfService) を継承できないため、1 つのサービス実装で複数のメッセージ タイプを処理することは可能ですか?
nservicebus - NServiceBusにサービスとして汎用ホストをインストールする場合、有効な資格情報を提供するにはどうすればよいですか?
次のディレクトリに.batファイルを作成するとします。
\ trunk \ Samples \ PubSub \
ユーザー名とパスワードの入力を求められますが、自分の資格情報を使用すると、次のような例外が発生します。
インストールフェーズ中に例外が発生しました。System.ComponentModel.Win32Exception:アカウント名が無効であるか、存在しないか、指定されたアカウント名のパスワードが無効です
これを機能させるためにどのクレデンシャルを渡すことができますか?
クレデンシャルをNServiceBus.Host.exeへのコマンドライン引数として構成したり、「ローカルシステムアカウント」として実行したりできますか?
ノート:
これまでの私の調査によると、(2)はTopShelfがIInstallationConfigurationを介してサポートするものである可能性があります
これは、MSMQがすでにインストールされているVistaマシンで実行しています。
サブスクライバーインスタンスをコンソールアプリとして実行した場合(つまり、次のように)、PubSubサンプルは期待どおりに実行されます。
log4net - NServiceBus汎用ホストのログを有効にするにはどうすればよいですか
タイトルを長くしすぎたくありませんでしたが、この質問は特に、ローカルシステム(Vistaマシン上)として実行するように構成されたWindowsサービス(TopShelfのおかげで)としてNServiceBus汎用ホストを実行することについて言及しています。
前の質問で、PubSubサンプルをWindowsサービスとして実行するように調整して、サービスを簡単に停止および開始して、NServiceBusが想定どおりに動作していることを完全に証明できるようにした理由を説明します。
何らかの理由で、Log4Netにディスクに何かを記録させることができないので、これはLog4Net(初心者)構成の問題である可能性がありますか?
以下は、ある種のトレースを実行するためのブルートフォース攻撃です。これまでに取得したのは、次のように記述されたファイルだけです。
C:\ logs \ <-GUID-> log4net.log
nhibernate - NServiceBusとNHibernate-メッセージハンドラーとトランザクション
私の理解では、NServiceBusはトランザクション内でIMessageHandlerのHandleメソッドを実行します。例外がこのメソッドから伝播した場合、NServiceBusはメッセージがメッセージキューに戻されるようにします(エラーキューの前にX回まで)など。つまり、いわば不可分操作があります。
NServiceBusメッセージハンドルメソッド内にいると、次のようになります。
これはトランザクションスコープにどのような影響を及ぼしますか?trans1は、Nservicebusトランザクションとの関係に関して、それらを結合するために何もしていなくても、ネストされたトランザクションとしてカウントされるようになりましたか?(そうでない場合、NServiceBusのトランザクションにどのようにリンクしますか?
2番目のブロック(trans2)を見て、throwステートメントのコメントを外すと、NServiceBusトランザクションはtrans1もロールバックしますか?基本的なシナリオでは、上記をコンソールアプリにダンプすると、trans1は独立し、コミットされ、フラッシュされ、ロールバックされません。NServiceBusのような他の誰かのトランザクションに座っているときに何が起こるかを明確にしようとしていますか?
上記は単なるサンプルコードであり、uowパターンのように、セッションを直接操作することはありません。