2017-12-13 5 views
1

私は2台のサーバーを持っています。最適なデータベース・ライター・モデルはどれですか?

サーバー1:(マスタサーバ)

- Master Database MariaDB 
- PHP Service 
    + Reader from Master Database 
    + Writer into Master database 

サーバー2:(スレーブサーバ)

- Slave Database from Server 1 
- PHP Service 
    + Reader from Slave Database 

だから、私は、サーバー2

のためのマスターデータベースにライターを作成しますそして、このイメージのマスターサーバーにデータを挿入するための描画と2通りの方法(矢印の方向はデータが来る方向です)。

enter image description here

私は最適化のために選択するどの方法を知らないと私は両方のテストをプログラムする多くの時間を持っていません。

これまたは新しいアイデアを経験したことがある方。ありがとう

答えて

1

「クライアント」以外のソースからのデータを取り込むためのマスターの横にあるとしますか?

最初の画像が優れています。なぜ、余分なホップと2番目の画像の余分なコーディングが発生するのですか?

しかし... "重要な読み取り"の問題に注意してください。たとえば、クライアントがブログコメントを投稿してから次のWebページに移動するが、そのページにはコメントが表示されない。問題は、ユーザーがそのページにアクセスする前にマスターへの書き込みがスレーブに到達していない可能性があることです。

これはさまざまな方法で解決されます。私はあなたにこの問題を警告するだけです。 (この問題はおそらく2番目の画像でより一般的です)。

私は最初の画像を何度もやりました。二番目の写真を考えたことはありません。

+0

こんにちは、ありがとうございます。マスターがクライアントからデータを取り込んでいます。 2番目の画像では、余分なリモートユーザーを設定する必要はありません。リークされた情報などの悪いケースでは、セキュリティがより良いと思うからです。 WebサービスはAPIであり、2番目の画像でデータを送信するとカールが使用されます。 WebサービスはUIを気にしません。私は最初の写真も良いと思う。 –

関連する問題