問題タブ [nservicebus-sagas]

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.

0 投票する
1 に答える
201 参照

msbuild - SQL Persistence を使用して別のサービスから NServiceBus Saga をホストできない

SqlPersistenceNServiceBus 6 とを使用して、あるプロジェクトの Saga を別のプロジェクトでホストしようとしていますSqlDialect.MsSqlServer。私が見つけたほとんどの例では、Saga はホスティング アプリと同じアセンブリに含まれており、おそらくこれが苦労している理由です。

すべてを同じアプリでホストする場合、NServiceBus.Persistence.Sql.MsBuildパッケージ.sqlはビルド中に Saga ファイルを正しく出力し、実行時にこれらを取得して実行します。別のアプリを使用すると、Outboxファイルのみが生成され、Saga のファイルは生成されません。次に、実行時に次のエントリが記録されます。SubscriptionTimeout .sql

INFO NServiceBus.Persistence.Sql.Installer ディレクトリ '[PATH]\SagaPersistence\Service\bin\Debug\NServiceBus.Persistence.Sql\MsSqlServer\Sagas' が見つからないため、saga 作成スクリプトは実行されません。

VS 2017 の完全な再現はhttps://github.com/WolfyUK/NServiceBusSagaSqlPersistenceにあります。

まず、Sagas を自己ホストするのではなく、別のサービスからホストするのは悪い考えですか? そうでない場合、誰かが SQL 永続性の問題を解決する最善の方法をアドバイスできますか?

0 投票する
1 に答える
455 参照

c# - NServiceBus サガの設計上の問題

NServiceBus saga を使用すると、「楽観的同時実行違反」例外が発生します。

私の物語は比較的単純なフローを扱っています。メッセージが到着すると、外部からのリクエストはほとんど行われず、しばらくすると応答が収集されます。

以下に、私の物語の例を示します。

NServiceBus がそのようなフローに対して「楽観的同時実行違反」例外を生成するのは正常な動作ですか?

どういうわけかサガを再設計することを検討する必要がありますか?

私は使っている:

  • NServiceBus 6.4.2
  • NServiceBus.RabbitMQ
  • NServiceBus.Persistence.Sql