1

Galera のドキュメントに記載されているように、クラスターは同期レプリケーションを使用します。しかし、もう少し深く見てみると、Galera は "仮想" 同期のみであるという記述があります。ノードでは、コミットは物理的なコミットではなく「証明書」を渡す必要があります。アプリケーションのアーキテクチャを計画するには、この部分を理解する必要があります。

だから私は今、次のケースのどれが当てはまるかを知りたいです:

スクリプト A はUPDATE約 5 秒かかるトランザクションで実行し、COMMITどちらも数秒かかります。スクリプト A がすぐに終了すると、スクリプト B が続きます。たとえば、1 秒以内に HTTP-POST-Request の後に HTTP リダイレクトが行われます。スクリプト B は、スクリプト A とは異なるノードを照会します。

  1. スクリプト B は、が完了するまでに約 4 秒かかるUPDATEため、 の前のステータスを取得します。UPDATE
  2. スクリプト B は、すべてのノードの状態が同期のときに が終了するUPDATEため、 の後にステータスを取得します。COMMIT

あるとすれば、どれが正しいでしょうか?または、動作は構成に依存していますか?

4

1 に答える 1