20.7.29. フェイルオーバー機能
トポロジーの変更に追いつくホットpidクライアントを使用すると、サーバーの 1 つまたは複数に障害が発生した場合に、要求のバランスをやり、より重要な操作にフェイルオーバーできます。
上記の条件操作の一部(p IfAbsent、バージョンの有無の置き換え、および条件付き 削除 )には、厳密なメソッドの戻り値の保証や、以前の値を返す操作が強制される操作が含まれます。
失敗しても、これらのメソッドの戻り値は保証する必要があります。そのためには、障害発生時にこれらのメソッドがクラスターで部分的に適用されない必要があります。たとえば、key=k1 のサーバーの replace() 操作は Flag.FORCE_RETURN_VALUE に、現在の値は A で、置換は B に設定します。置き換えに失敗した場合、一部のサーバーには B が含まれており、フェイルオーバー時に、B が設定されたノードにフェイルオーバーを 置き換えるか、または )が を返す可能性がある場合は、元の replace(A B を返す可能性があります。
このような状況を回避するために、Java HotTEMPLATES クライアントユーザーが条件付き操作または以前の値が必要な操作を使用する場合は、条件付き操作や戻り値を返さないようにキャッシュがトランザクションに設定されていることが重要です。