NCache .NET/用の非常に高速でスケーラブルなメモリ内分散キャッシュです。.Net Core アプリケーション。 多くの場合、 NCache 多くの場合、顧客との対話型であるミッションクリティカルなアプリケーションの実稼働環境で使用されます。 このようなアプリケーションでは、高可用性と100%の稼働時間が非常に重要な要件です。 NCache に応える必要があります。 と NCache これらの要件に非常に効果的かつ多くの機能を通じて対応します。
そのような機能の中には、アップグレードできるライブアップグレードがあります NCache アプリケーションのダウンタイムを発生させることなく、新しいバージョンに移行します。
サーバーを手動でアップグレードする際の顕著な遅延は、ライブアップグレード機能によって大幅に削減されます。 NCache 最小のラグでキャッシュクラスターのすべてのサーバーをアップグレードできます。 NCache、設計上、すべてのサーバーが同じバージョンの NCache。 これは、バージョンの非互換性の問題を防ぐために行われます。
クラスタのバージョンを最新の状態に保つには、 NCache XNUMXつのキャッシュクラスター間のブリッジとして機能するWANレプリケーション用のブリッジトポロジを提供します。 このようにして、現在実行中のキャッシュのデータを最新のものに段階的に複製できます。 NCache キャッシュが実行され続けている間、その間にそのブリッジを使用してキャッシュします。
ここに記載されている手順に従って、ライブアップグレードを通じてクラスターのキャッシュをアップグレードします。
クラスタ内に2つ以上のキャッシュサーバーがある場合は、それらのサブセットを取り出してアップグレードします。 NCache それらのサーバー上のサーバーソフトウェア。
サブセットを取り出すときは、合計4つ以上のキャッシュサーバーを用意して、ソースクラスターに少なくとも2つのサーバーを残すことをお勧めします。 ただし、クラスターが4つ以上のサーバーで構成されていない場合は、それでも問題ありません。 ただし、このような場合、アプリケーションを支援する唯一のサーバーがダウンすると、アプリケーションがダウンタイムに直面する可能性があります。
アップグレードした後 NCache 2つ以上のキャッシュサーバーで、それらすべてのクラスターを作成し、これらのサーバーでキャッシュを開始します。 高可用性を確保するには、各サブクラスターに少なくとも2台のサーバーが必要です。サーバーがXNUMX台だけでダウンした場合、ダウンタイムが発生する可能性があります。
新しいバージョンのを実行しているすべてのキャッシュサーバーで構成されるクラスターを正常に作成した後 NCache、新しいクラスター間にブリッジを作成します(一般に ターゲット)および古いバージョンのクラスター(source).
このブリッジを作成するには、古いバージョンのXNUMXつの専用サーバーを使用できます。 NCache または、古いバージョンを実行しているXNUMX台のサーバーでブリッジトポロジを実行します。 NCache。 ブリッジトポロジのアクティブ-パッシブ構成を使用し、ターゲットクラスターがソースクラスターと完全に同期するまで待ちます。
ブリッジノードで、ターゲットキャッシュのIPを追加して、ブリッジサーバーにデータを入力する必要があります。 次のようにbridge.ncconfを介してこれを行うことができます。
<configuration>
<bridge-config … >
<cache … servers-list="20.200.20.38, 20.200.20.29" … />
</bridge-config>
</configuration>
両方のクラスターが完全に同期されたら、クライアントのサブセットを取得して、すべてを新しいバージョンのキャッシュクラスターに移行する必要があります。 移行したら、古いバージョンに接続されているすべてのクライアントをすぐに停止する必要があります。 アクティブ-パッシブブリッジを介したこのキャッシュクライアントの移行により、データの損失やクライアントアプリケーションの操作の中断がなくなります。
クライアント接続がターゲットクラスターに正常に転送されたら、ソースクラスターを停止してアップグレードする必要があります。 アップグレード後 NCache すべてのサーバー上のソフトウェアで、これらのサーバーを新しいバージョンのキャッシュクラスターに追加します。
これが、のライブアップグレード機能を使用するための最後のステップになるはずです。 NCache 既存のキャッシュクラスターをアップグレードします。
次に、古いバージョンに接続されている残りのクライアントを新しいバージョンのキャッシュクラスターに移行する必要があります。 すべてのクライアントが正常に移行されたら、それらのクライアントでアプリケーションの実行を開始できます。
キャッシュクライアントをアップグレードしたくない場合は、 NCache 古いバージョンのクライアントが新しいバージョンのキャッシュクラスターとシームレスに連携できるようにします。 したがって、クライアントをアップグレードするか、古いバージョンを維持するかはあなた次第です。 NCache アプリケーションサーバーまたはWebサーバー上のクライアント(NCache remote clients)。 すべてのキャッシュサーバーが新しいバージョンにアップグレードされている場合でも、アプリケーションは完全に実行されます。 これはすべて可能です。 NCache クライアントに下位互換性を提供します。
アップグレードすることをお勧めします NCache 新しいクライアントにはいくつかの重要なバグ修正が含まれている可能性があるため、アプリケーションおよびWebサーバー上のクライアントソフトウェア。 このプロセスは非常に簡単でシームレスです。 これは、クライアントの新しいバージョンが古いバージョンと下位互換性があるためです。 この互換性により、アプリケーションは変更に気付かずに新しいクライアントで動作できます。 アプリケーションでライブアップグレードを使用することの最大の利点は、コードの変更や再コンパイルが不要なことです。 のバージョンをアップグレードする必要があります NCache クライアントソフトウェアと残りは自動的に行われます。
ライブアップグレード機能を使用してアップグレードする方法の詳細な手順を確認するには NCache クラスターについては、次のドキュメントに従ってください ライブアップグレード NCache .