Linux

如何處理 wordpress woocommerce 商店的故障轉移?

  • May 19, 2021

我正在開發一個包含多個 WordPress + Woocommerce 商店的項目。我們有 3 台專用伺服器。隨著流量的增長。有時,伺服器已關閉。我正在尋找適用於那些 wordpress+woocommerce 網站的故障轉移解決方案。

首先,我找到了 CloudFlare。它將自動故障轉移到另一個“A”記錄。所以我只需要將所有文件和數據庫複製到其他伺服器作為備份。當第一台伺服器關閉時,它將指向另一台伺服器。

但這帶來了另一個問題。當它指向第二台伺服器時。數據庫中的所有數據都會回到創建備份時。而當原伺服器固定後,域又指向原伺服器。然後寫入第二台伺服器的所有數據都消失了,因為它沒有寫入原始伺服器。

然後我查看了數據庫的主從複製。假設原來的伺服器是主伺服器,第二台伺服器是從伺服器,每次客戶購買產品或寫評論時,它都會寫入主數據庫。然後從庫同步主庫。但問題是當原始伺服器關閉時。它以只讀方式切換到從數據庫。因此,即使是客戶也可以載入該網站。他們無法購買或發表評論。

我不知道下一步該做什麼。請幫忙。謝謝你。我們想歸檔以下內容:

  • 當一台伺服器宕機時切換伺服器
  • 隨時同步數據庫。切換過程中不失去數據

由於您有 3 台專用伺服器,因此您可以使用 Galera 3 節點集群來擁有主動-主動數據庫集群,這樣您就不必指向特定節點,而是它們都作為一個節點工作。

https://mariadb.com/kb/en/getting-started-with-mariadb-galera-cluster/

您還需要一個負載均衡器,但您可以在每台具有虛擬 IP 的伺服器上使用 haproxy,以實現負載均衡並在 HA 模式下進行設置。

然後,您還需要 3 個 WP 實例,因此您可以使用 NFS 磁碟之類的東西將相同的掛載點導出到所有伺服器,或者每隔 1 分鐘通過 cron 同步到伺服器。

當然,這對於雲提供商來說要容易得多,但對於您的 3 專用伺服器設置,這絕對是可行的。

引用自:https://serverfault.com/questions/1063736