0

ユーザーがデータベースから作成したタスクを表示できる Web アプリケーションがあります。

データベースのすべてのエントリを呼び出して、タスクがまだ最新か期限切れかをチェックする 2 つ目のアプリケーションを構築したいと考えています。2 番目のアプリケーションで、最初のアプリケーションのすべてのセッションでデータを強制的にリロードできるソリューションを探しています。

実行中のすべてのセッションに影響を与えるメソッドを呼び出す方法はありますか?

public void callUpdate()
{
//get running Sessions of App1    
//send update event
}

public void EventListener(updateEvent)
{
//reload data
}

またはこのようなものですか?

この画像は、問題を理解するのに役立つ場合があります。

ここに画像の説明を入力

Web サービスとサーブレットを使用したソリューションも探しましたが、問題を解決するのに役立つものは見つかりませんでした。または、検索時に適切なキーワードを使用していませんでした。

4

1 に答える 1

0

アプリケーションを疎結合する JMS ソリューションを使用できます。webApp1 は、タスク チェックをトリガーするキューにメッセージ (CheckForExpiredTasks) を送信できます。webApp2 はそのメッセージをリッスンし、受信すると期限切れのタスクを探す作業を実行します。実行中のセッションを期限切れにするシナリオが発生した場合、webApp2 は「ExpireAllSessions」メッセージをキューに送信します。正しいキューでリッスンしている webApp1 は、このメッセージを受信し、実行中のすべてのセッションを期限切れにします。

2 つのアプリケーションがデプロイされているかどうかは問題ではないという点で、JMS を使用すると便利です。彼らがデータにアクセスできる限り。webApp2 自体は、webApplication である必要はありません。EJB または Spring を使用した単純なサービス アプリケーションです。

お役に立てれば

于 2013-05-11T21:41:33.837 に答える