6

シナリオは次のとおりです。新しいメッセージが利用可能になったときにユーザーに通知するために使用されるsignalRハブをホストするプライベートメッセージングシステムを持つAsp.Net MVC 4アプリがあります。すべてが正常に機能し、Web アプリはユーザー名と共に connectionId を登録し、シグナルは NotificationAdapter クラスを介して DataLayer からハブに送信されます。

問題は、Quartz.Net を利用して、タスクの完了時にプライベート メッセージも送信する別のサービスを作成しなければならなかったときに発生しました。Quartz サービスがハブに接続できるようにしたいのですが、それを別のプロセスにすることはできません。Quartz ベースのサービスと Web アプリの間に永続的な接続が必要ないため、signalR .net クライアントを使用したくありません。Hub のサーバー メソッドをサービスに公開するため、またはそのために ScaleOut を使用するために、自分の Web サイトにエンドポイントを作成することを考えていますが、何かが足りない気がするので、コミュニティに問い合わせてみます。

4

2 に答える 2

7

これは非常に遅い回答かもしれませんが、実際に受け入れられた回答がなかったためです。1つ提供します。

Enterprise Service Bus (ESB) などの重いソリューションを実装せずに、Quartz.NET アプリケーションから ASP.NET Web アプリケーションに情報を送信させる最も簡単な方法は、単純に ASP.NET で Web サービスを公開し、Quartz.NET を呼び出すことです。タスクが終了したときの ASP.NET Web サービス。ASP.NET Web サービスに入ると、signalR を介してクライアントに通知を送信するために通知を返すことができるはずです。

于 2015-05-23T02:49:45.157 に答える