2

ASP.NET で実行されている Web アプリケーションがあり、SignalR を使用して、クライアントとサーバー間のリアルタイム通信をサポートしています。

ループ内で動作し、SignalR 接続を使用して必要に応じてクライアントに通知するある種のワーカー プロセスが必要であり、Web アプリケーションはワーカー プロセスを呼び出せる必要があります。(ワーカー プロセスと Web アプリケーション間の双方向通信)

Web アプリケーションとワーカーの間の通信には何が推奨されますか?

シナリオは次のようになります。

クライアントからリクエストが届く -> ワーカーに通知する -> ワーカーが仕事をする -> Web アプリケーションにコールバックする -> クライアントに通知する。

また

ワーカーが通知 -> Web アプリケーション、SignalR を使用して通知 -> クライアント

どうにかしてインスタンスを共有できますか? このワーカーを IIS 内の同じアプリケーション ドメインで実行できますか? これにどのようにアプローチできますか?

ありがとうございました !

4

2 に答える 2

1

通常、私はデータベースを介してASP.NETと別のプロセス(ほとんどの場合、スケジュールされたコンソールアプリケーション)との間で通信を行います。

つまり、ASP.NETアプリケーションはいくつかのジョブをジョブテーブルに書き込み、コンソールアプリケーション(Windowsタスクスケジューラを介して約10分ごとに実行されます)はデータベーステーブルからジョブを取得して処理します。

于 2011-12-23T22:14:10.303 に答える
1

要求がクライアントから開始され、応答が要求完了コールバックで処理される非同期 IIS でホストされる WCF または Web サービスを使用できます。

IIS はサービス クラスの別のインスタンスをインスタンス化できるため、このクラスは適切なワーカーを直接呼び出すことができます。これは、ユーザーが応答を直接待機することがないためです。

于 2011-12-24T00:10:01.087 に答える