リードレプリカで Amazon MySQL RDS を使用することを検討しています。私を悩ませている唯一のものは、レプリカラグと最終的な不一致です. たとえば、ユーザーが自分のプロファイルを変更し (UPDATE はメイン DB インスタンスで実行されます)、ページを更新して変更された情報を表示する場合をイメージします (レプリカ ラグのためにまだ変更を受け取っていないレプリカから SELECT が実行される可能性があります)。
偶然、ターゲットを絞ったクエリを実行できることを述べているAmazon の記事を見つけました。私にとっては、レプリカではなくメイン DB インスタンスで選択を実行するように Amazon に指示するために、何らかのパラメータを追加できるように思えます。ユーザー プロファイルの例は非常に些細なことですが、ユーザーが複数の手順を実行し、次の画面で更新された情報を表示する必要がある場合など、より現実的なケース、たとえばチェックアウトでも同じ問題が発生します。はい、アプリケーションはそれ自体でデータ セット全体をキャッシュできますが、メインの DB インスタンスでターゲットを絞ったクエリを実行する方法を誰かが知っていれば、それは素晴らしいことです。