擴展 Web 層 - WordPress 上的最佳實務 AWS

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

擴展 Web 層

若要將單一伺服器架構演變為多伺服器、可擴展的架構,您必須使用五個關鍵元件:

  • Amazon EC2執行個體

  • Amazon Machine Images (AMIs)

  • 負載平衡器

  • 自動調整規模

  • 運作狀態檢查

AWS 提供各種EC2執行個體類型,讓您可以選擇效能和成本的最佳伺服器組態。一般而言,運算最佳化 (例如 C4) 執行個體類型可能是 WordPress Web 伺服器的最佳選擇。您可以在 AWS 區域內的多個可用區域部署執行個體,以提高整體架構的可靠性。

由於您可以完全控制EC2執行個體,因此您可以使用根存取權登入,以安裝和設定執行 WordPress 網站所需的所有軟體元件。完成後,您可以將該組態儲存為 AMI,您可以使用它來啟動具有所有自訂項目的新執行個體。

若要將最終使用者請求分發至多個 Web 伺服器節點,您需要負載平衡解決方案。AWS 透過 Elastic Load Balancing提供此功能,這是一種高可用性服務,可將流量分散至多個EC2執行個體。由於您的網站透過 HTTP或 為使用者提供內容HTTPS,因此我們建議您使用 Application Load Balancer 、具有內容路由的應用程式層負載平衡器,以及在必要時在不同網域上執行多個 WordPress 網站的能力。

Elastic Load Balancing 支援在AWS區域內多個可用區域之間分發請求。您也可以設定運作狀態檢查,讓 Application Load Balancer 自動停止將流量傳送至失敗的個別執行個體 (例如,由於硬體問題或軟體當機)。AWS 建議使用 WordPress 管理員登入頁面 (/wp-login.php) 進行運作狀態檢查,因為此頁面會確認 Web 伺服器正在執行,以及 Web 伺服器已設定為正確提供PHP檔案。

您可以選擇建置自訂運作狀態檢查頁面,以檢查其他相依資源,例如資料庫和快取資源。如需詳細資訊,請參閱 Application Load Balancer 指南 中的目標群組運作狀態檢查

彈性是 AWS Cloud 的關鍵特徵。您可以在需要時啟動更多運算容量 (例如 Web 伺服器),而不需要時則執行更少。Amazon EC2 Auto Scaling 是一項 AWS 服務,可協助您自動化此佈建,根據您定義的條件來擴展或縮減 Amazon EC2容量,而不需要手動介入。您可以設定 Amazon EC2 Auto Scaling,以便在需求激增期間無縫增加使用中的EC2執行個體數量,以維持效能並在流量減少時自動減少,以將成本降至最低。

Elastic Load Balancing 也支援動態新增和移除負載平衡輪換中的 Amazon EC2 主機。Elastic Load Balancing 本身也會動態增加和減少負載平衡容量,以適應流量需求,而無需手動介入。