Node.js と MySQL でこの Web アプリケーションを作成していますが、データの同期に苦労しています。
シナリオは次のとおりです。
1000 人の顧客がいて、全員がオフィス/サイトにローカル Web サーバー データベースを持っているとします。ユーザーは、ログイン、データの編集、センサーのデータログなどを行うことができます。これらのすべてのアクティビティは、例のために、顧客/サイトごとに 1 日あたり約 500KB のテーブル データに寄与します。したがって、1000 人の顧客それぞれが、1 日に何度も新しいデータで常に更新されるローカル データベースを持っています。
同時に、1,000 人の顧客すべてが、あたかもローカルにオンサイトにいるかのように、ログインしてすべてのデータを確認できるクラウド サービスがあります。また、クラウドから変更を加えたり、データを編集/作成/削除したりできます。
今私が抱えている問題は次のとおりです。
すべてのサイトは、クラウド サーバーと双方向で同期する必要があります。おすすめは何ですか?(マルチマスター レプリケーション?、クラスタリング?、カスタム レプリケーションを作成しますか?) 長所と短所は何ですか?
顧客のサイトがオフラインで、ローカル データベースとクラウド データベースの両方に新しいデータが追加された場合はどうなりますか? 競合とマージは通常どのように行われますか?
前もって感謝します!