私たちはいくつかのクライアント/ドメイン(100以上)にインストールしたASP.NET MVC Webアプリケーションを持っています。このWebアプリケーションは、Windowsサーバーで実行されているMS SQLデータベースで動作します。すべてのドメインは同じサービスにあり、同じMS SQLサーバー内の別々のデータベースで実行されています。Windowsサービスでリマインダ電子メールを送信する
各クライアントは、ユーザーのイベントを作成できます。 1つのクライアントが200を超えるイベントを持つことができる時代を語っています。
すべてのクライアントが送信するウィンドウサービスを作成する必要があります。数時間ごとに、各クライアントの各イベントのリマインダーメールが送信されます。
前に説明したように、各クライアントには独自のデータベースがあり、すべてのクライアント情報とデータベース名を持つ共通データベースがあります。
サービスが行う必要があることは、各クライアントについて、自分が持っているイベントを確認し、対応する電子メールを送信することです。
サービスがすべてのクライアントを通過するか、クライアントごとにサービスするのが良いかどうかはわかりません。サービスが1つしかない場合、たとえば6時間ごとに電子メールを送信するなど、サービスを実行する必要があります。
クライアントごとにサービスがある場合は、asp.net Webアプリケーションからサービスを作成する必要がありますか?
これにはどのような方法が最適ですか?
アプリがONEセントラルデータベースに通知を送信する場合は、Windowsサービスが1つしかないと意味があります。その通知はその宛先に保存されるので、サービスは正しいクライアントにそれらを返すことができます。 – Wurd