2011-07-19 101 views
5

好吧,一家小公司可以通知他們的用戶,然後在他們的網站上升級他們的數據庫/代碼。但這是一種醜陋的行爲,不鼓勵定期迭代。大公司(如Facebook)如何在沒有停機的情況下進行遷移?

真正的大公司(如Facebook)如何進行遷移,而沒有停機?

+0

想象一下,有多個數據庫服務器,而不是使用關係數據庫,具有多餘的容量。您可以輕鬆地將其中一個,更新,重新同步並恢復,用戶永遠不會知道。 –

回答

3

關鍵組件是數據庫。我見過的方法涉及使用複製來跨兩臺服務器鏡像數據。完成此設置後,可以在應用程序服務器指向輔助(複製)服務器時升級主數據庫服務器。主數據庫升級完成後,應用程序服務器可以進行懶惰升級並指向升級的數據庫。訣竅是確保應用服務器可以處理多個數據庫模式。要做到這一點,你需要考慮在某種負載平衡設備背後有幾組服務器。這不便宜:)。

2

他們使用具有massve並行性的羣集解決方案,因此他們可以將一臺服務器從羣集中取出,而不會影響服務,升級它,然後將其放回羣集中。這通常要求版本向後兼容。

相關問題