2012-10-30 22 views
0

我正在使用Amazon RDS作爲我的數據庫服務,並且希望使用只讀副本功能將流量分發到我的只讀副本卷中。我目前將我的數據庫的連接信息存儲在一個配置文件中。所以我的想法是,只要我的應用程序執行讀操作,我就可以創建一個隨機從我的配置文件中的讀取副本終端/地址列表中挑選出來的函數。這是否會將流量分發到我的RDS只讀副本?

只要我不在寫作時執行這個想法是否存在問題?

回答

0

最大的挑戰是,不能保證只讀副本將與主服務器或更新時相互更新。如果每次讀取時選擇不同的讀取副本,如果其中一個副本位於後面,您可能會看到一些奇怪的情況:N個讀取中的一個會得到過時的數據,從而給出系統的不一致視圖。

從一致性角度來看,爲每個事務或會話選擇隨機只讀副本可能更容易處理。

1

我的猜測是,如果您的服務具有足夠的流量到您想要平衡負載的多個rds只讀副本的位置,那麼您的負載平衡器後面還有多個應用程序服務器。因此,您可能最好是將某些應用服務器實例集羣指向特定的只讀副本。也許你是按可用性區域來做的。

這裏的想法是,您的負載平衡器將作爲正確分配最終導致數據庫讀取的傳入請求的機制。如果您有不同副本隨機分配的數據庫讀取次數,則可能會出現意外尖峯,導致一個數據庫副本發生過多流量,導致您的服務產生延遲尖峯。

相關問題