2012-08-22 48 views
1

我目前正處在一個更具體的問題之前,該問題與將通過@ WebFaction託管的特定網站的故障轉移支持/冗餘有關。不幸的是,在數據庫級別複製不是一種選擇,因爲我必須爲每個帳戶安裝我自己的本地PostgreSQL實例,而且我擔心其他方面的性能。所以我在考慮使用Django的多數據庫功能,並將所有寫入路由到所有(共享)數據庫,並將讀取數據平衡到最近的數據庫。Django multi-db:將所有寫入路由到多個數據庫

我現在的問題是,我讀的所有文檔似乎表明,這很可能是不可能的。更精確地說,我需要什麼:

  • 將所有寫入一組特定的DBS的(同一類型,版本,...)
  • 如果寫入失敗,所有的人都將回滾(交易)
  • 將所有讀取到最近的DB(可靜態配置)

這是目前可能的Django的多數據庫支持?

非常感謝提前任何幫助/提示...

+0

什麼是寫作的路由規則。一些循環賽計劃?你不能使用一個入口點的數據庫集羣嗎? – RickyA

回答

1

我一直在尋找類似的東西。我發現的是:

1)嘗試類似Xeround雲數據庫 - 它建立在MySQL上並且兼容但不支持保存點。您必須在(自定義)數據庫引擎中禁用此功能。好處是它們在數據庫級別複製並提供自動可伸縮性和故障轉移。您的應用程序就像有一個數據庫一樣工作。他們目前遇到了一些連接問題,儘管這阻礙了我的遷移。

2)django-synchro包 - 看上去promissing在應用層的複製,但我對此有一些擔心。它不適用於我在代碼中使用很多的objects.update()。

相關問題