私が解決しようとしている一般的な問題は、「新しいバージョンへのアップグレード中にユーザーがアプリの使用を停止することなく Web アプリケーションを再デプロイする方法」です。解決策として、次の仮説シナリオを思いつきました。
Web アプリの本番環境には構成済みの Web サーバー (IIS または Apache) があり、2 つのまったく同じ構成の JBoss インスタンスが実行されます。
まず、Web サーバーはすべてのリクエストを 1 つの JBoss インスタンスにリダイレクトし、現在のバージョンの Web アプリを実行します。
新しいバージョンの Web アプリを本番環境にデプロイする準備ができました。
新しいバージョンを JBoss の 2 番目のインスタンスにデプロイします (最初のインスタンスがまだ Web アプリの古いバージョンを実行している間)
次に、新しいバージョンの Web アプリを使用して、すべての新しい HTTP セッションを 2 番目の JBoss インスタンスにリダイレクトするように、何らかの方法で Web サーバーを構成します。
現在アクティブなセッションは、ユーザーがログアウトするかセッションが期限切れになるまで、「古い」JBoss インスタンスにリダイレクトされます。
別のバージョンの再デプロイについては、同じ手順に従います (ただし、2 番目の実行中の古いバージョンを維持しながら、最初のインスタンスにデプロイします)。
現在、このシナリオが意味をなすかどうかはわかりません。トピックに関する私のグーグル検索は、常に JBoss クラスター構成で終わりました。私の意見では、クラスター HA ソリューションの必要性が高くないため、この場合は行き過ぎです (少なくとも今のところ)、アプリケーションはクラスタリングのサポートを考慮せずに作成されていたため、実際の問題になる可能性があります。
トピックのヒントを教えてください。誰かが同様の問題を解決した場合も、大いに感謝します。この説明で何かが欠けているかどうかについてのアドバイスも望ましいでしょう.