簡體   English   中英

分布式數據庫的最佳設計

[英]Best design for distributed databases

我有一個項目,我們有一個中央系統,它在 MySQL 之上公開一個 API。 我們現在需要在幾個不同的盒子(可能是 50+)上本地復制相同的服務。 我們希望在每個盒子上都有一個本地數據庫緩存,以確保在“中央”系統出現故障時快速響應和故障轉移。

知道什么是最好的設計嗎? 我在考慮某種主/從設置,但我不確定這是否適用於 50 多台服務器。 我不確定什么是最好的方法。

MySQL 自己的復制解決方案呢? 如果你已經排除了這種可能性,你應該說出原因。

通過我看到的復制,你有一個主從。 如果主人倒下,其中一個奴隸接管。 擁有 50 多個奴隸,您將擁有一長串(且令人困惑的)主人。

對您擁有的數據類型或讀/寫百分比一無所知,我會建議以下其中一項:

  1. 在本地緩存 static 數據(memcache 等)。 讀取將是本地的,寫入將返回到 mysql 主機。 這適用於大多數靜態配置信息。 我現在在該設置中有 6 台服務器。
  2. 分片您的數據。 使用 50 台服務器,將它們設置為 25 個主/從對,並將 1/25 的數據放在每個分片上。 為 N+1 冗余增加一台服務器。

希望有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM