ウィキペディア (http://en.wikipedia.org/wiki/Three-phase_commit_protocol) で 3 フェーズ コミット プロトコルを読んでいましたが、3PC が失敗するシナリオが思い浮かびました。
2 人の参加者 A と B と、コーディネーター C がいるとします。
1) C はプリコミット メッセージを A に送信し、プリコミット メッセージを B に送信する前に、A と C の両方が同時に失敗します。2) トランザクションが再開され、A からの応答がないため、B はトランザクションを中止します。 3) A は、プリコミット メッセージを既に取得しているため、トランザクションをコミットします。
これは、3PC が対処することになっていた 2PC の元の問題でもありませんでしたか? 3PC はどのように問題を解決していますか? 何が欠けていますか。ありがとう。