背景:なぜレプリカはいつも「息切れ」するのか?
MySQLのマスター・スレーブ(ソース・レプリカ)構成を運用していると、スレーブの処理がマスターより遅れる現象に必ず一度は頭を悩ませることになります。以前、ユーザーがプロフィールを更新した直後にトップページに戻っても古い情報が表示されたままという、厄介なケースに遭遇しました。システムを調査したところ、レプリカで30分もの遅延が発生していました。原因は、ソースで実行された500万件のレコードに影響する1つの UPDATE 文でした。

MySQLのマスター・スレーブ(ソース・レプリカ)構成を運用していると、スレーブの処理がマスターより遅れる現象に必ず一度は頭を悩ませることになります。以前、ユーザーがプロフィールを更新した直後にトップページに戻っても古い情報が表示されたままという、厄介なケースに遭遇しました。システムを調査したところ、レプリカで30分もの遅延が発生していました。原因は、ソースで実行された500万件のレコードに影響する1つの UPDATE 文でした。