本文說明小型到中型 WordPress 安裝的解決方案。 此解決方案提供 Azure 平臺的延展性、可靠性和安全性,而不需要複雜的設定或管理。 如需較大型或需要大量記憶體安裝的解決方案,請參閱 Azure 上的 WordPress 裝載選項。
架構
下載此架構的 Visio 檔案。
注意
您可以實作任何特定 WordPress 主控方法專屬的秘訣和建議,以擴充此解決方案。 如需部署 WordPress 安裝的一般秘訣,請參閱 Azure 上的 WordPress。
資料流程
此案例涵蓋可在 Azure App 服務 上執行的可調整 WordPress 安裝。
- 使用者透過已啟用 Azure Web 應用程式防火牆 的 Azure Front Door 存取前端網站。
- Azure Front Door 會將要求散發到 WordPress 執行的 App Service Web 應用程式。 Azure Front Door 會擷取任何未從 WordPress Web 應用程式快取的數據。
- WordPress 應用程式會使用服務端點來存取 適用於 MySQL 的 Azure 資料庫 的彈性伺服器實例。 WordPress 應用程式會從資料庫擷取動態資訊。
- 透過相同可用性區域中的待命伺服器,可針對 適用於 MySQL 的 Azure 資料庫 啟用本地備援高可用性。
- 所有靜態內容都裝載於 Azure Blob 儲存體。
元件
App Service 是平台即服務 (PaaS) 供應項目,可提供建置、部署和調整 Web 應用程式的架構。 在此架構中,App Service 會裝載 WordPress 應用程式。
適用於 MySQL 的 Azure 資料庫 - 彈性伺服器 是以開放原始碼 MySQL 資料庫引擎為基礎的受控關聯式資料庫服務。 在此架構中,資料庫選項會儲存 WordPress 資料。
Azure DDoS 防護 是一項網路安全性服務,可提供增強的 DDoS 風險降低功能。 在此架構中,DDoS 防護有助於防禦針對公用 IP 位址的 DDoS 攻擊。
Azure Front Door 是新式雲端內容傳遞網路和全域負載平衡器。 在此架構中,Azure Front Door 是 Web 使用者的應用程式進入點。
Azure 虛擬網路 是一種網路服務,可讓已部署的資源彼此通訊、因特網和內部部署網路進行通訊。 在此解決方案中,Azure App Service 和後端元件只能透過虛擬網路中的私人連線連線連線。
Blob 儲存體 是可調整、最佳化的物件儲存體服務。 在此架構中,Blob 儲存體會裝載 WordPress 應用程式的所有靜態內容。
網路安全性群組 (NSG) 是安全性功能,可使用安全性規則清單,根據來源或目的地 IP 位址、連接埠和通訊協定,允許或拒絕輸入或輸出網路流量。 在此架構中,NSG 規則會限制子網路中應用程式元件之間的流量。
App Service 上的 WordPress 範本是在 App Service 上裝載 WordPress 的受控解決方案範本。 在此架構中,範本會提供預先設定的 WordPress 部署,其中包含 App Service 和本節所述的其他 Azure 服務。
替代項目
- 您可以使用 Azure 受控 Redis 來裝載 WordPress 效能優化外掛程式的索引鍵值快取。快取可以在 App Service Web 應用程式之間共用。
- 您可以使用 內容傳遞網路,將 Web 內容傳遞給使用者,而不是 Azure Front Door。
案例詳細資料
此範例案例適用於 WordPress 的小型到中型安裝。
潛在使用案例
- 造成流量激增的媒體事件
- 使用 WordPress 作為其內容管理系統的部落格
- 使用 WordPress 的商務或電子商務網站
- 使用其他內容管理系統建置的網站
考量
這些考量能實作 Azure Well-Architected Framework 的支柱,這是一組指導原則,可以用來改善工作負載的品質。 如需詳細資訊,請參閱 Well-Architected Framework。
可靠性
可靠性有助於確保您的應用程式可以符合您對客戶的承諾。 如需詳細資訊,請參閱可靠性的設計檢閱檢查清單。
當您部署此解決方案時,請考慮下列建議:
- App Service 提供內建的負載平衡和健康情況檢查。 這些功能可協助您維護 App Service Web 應用程式失敗時的可用性。
- 當您使用內容傳遞網路來快取所有回應時,您會獲得較小的可用性權益。 具體來說,當來源沒有回應時,您仍然可以存取內容。 但快取不提供完整的可用性解決方案。
- 您可以將 Blob 記憶體複寫至配對區域,以跨多個區域進行數據備援。 如需更多資訊,請參閱 Azure 儲存體備援。
- 若要增加 適用於 MySQL 的 Azure 資料庫 可用性,請啟用相同區域高可用性。 此功能會在與主伺服器相同的可用性區域中建立待命伺服器。 您必須使用一般用途或 業務關鍵 計算層來啟用相同區域的高可用性。 如需詳細資訊,請參閱 適用於您需求的高可用性選項 。
安全性
安全性可提供針對蓄意攻擊和濫用寶貴數據和系統的保證。 如需詳細資訊,請參閱安全性的設計檢閱檢查清單。
當您部署此解決方案時,請考慮下列建議:
- 使用 Azure Front Door 上的 Azure Web 應用程式防火牆,協助保護流入前端應用層的虛擬網路流量。 如需詳細資訊,請參閱 Azure Front Door 上的 Azure Web 應用程式防火牆。
- 不允許輸出因特網流量從資料庫層流動。
- 不允許公用存取私人記憶體。
如需 WordPress 安全性的詳細資訊,請參閱 一般 WordPress 安全性和效能秘訣 和 Azure 安全性檔。
成本優化
成本優化著重於減少不必要的費用,並提升營運效率的方式。 如需詳細資訊,請參閱成本最佳化的設計檢閱檢查清單。
當您部署此解決方案時,請檢閱下列成本考慮:
- 流量預期(GB/月)。 您的流量是對成本影響最大的因素。 您收到的流量量會決定您需要的 App Service 實例數目,以及輸出數據傳輸的價格。 流量也直接與內容傳遞網路所提供的數據量相互關聯,其中輸出數據傳輸成本更便宜。
- 裝載的數據量。 請務必考慮您在 Blob 記憶體中裝載的數據量。 記憶體定價是以使用的容量為基礎。
- 寫入百分比。 請考慮您在 Azure 儲存體 中寫入網站和主機的新數據量。 判斷是否需要新的數據。 針對多區域部署,您寫入網站的新數據量會與您跨區域鏡像的數據量相互關聯。
- 靜態與動態內容。 監視您的資料庫記憶體效能和容量,以判斷更便宜的SKU是否可支援您的網站。 資料庫會儲存動態內容,而內容傳遞網路會快取靜態內容。
- App Service 優化。 如需優化 App Service 成本的一般秘訣,請參閱 Azure App 服務 和成本優化。
效能效率
效能效率是指工作負載能夠有效率地調整以符合使用者需求。 有關詳細資訊,請參閱效能效率的設計審核清單。
此案例會在 App Service 中裝載 WordPress 前端。 您應該啟用自動調整功能,以自動調整 App Service 實例的數目。 您可以設定自動調整觸發程式來回應客戶需求。 您也可以根據定義的排程來設定觸發程式。 如需詳細資訊,請參閱 Azure 自動調整入門指南。
參與者
本文由 Microsoft 維護。 原始投稿人如下。
主要作者:
- Vaclav Jirovsky | 雲端解決方案架構師
其他投稿人:
- Adrian Calinescu | 資深雲端解決方案架構師
若要查看非公開的 LinkedIn 個人檔案,請登入 LinkedIn。
下一步
產品文件:
- Azure Front Door 是什麼?
- 什麼是 Azure Web 應用程式防火牆?
- 什麼是 Azure Blob 儲存體?
- 適用於 MySQL 的 Azure 資料庫 - 彈性伺服器
- 什麼是 Azure 虛擬網路?
- 關於 Azure Key Vault
- 快速入門:建立 WordPress 網站
- Azure DDoS 保護是什麼?
Microsoft訓練模組: