Azure App Service 建置 WordPress 完全攻略

Azure App Service 是什麼?

Azure App Service 是一個 Azure 中的 PaaS 服務,Azure 於這邊有簡單說明什麼叫做 PaaS 服務。不過在這之前,還是要先了解一下什麼是 Azure 呢? Azure 是微軟所推出的雲端運算平台,Azure 雲端運算服務,可以分成 下面四大種類:

聽起來很抽象,可參照這篇微軟官方的 Cloud Model 說明圖,用建築來做比喻, IaaS 就是跟 Azure 租一塊地,從打挖地下室、打地基、綁鋼筋、灌水泥…等,地下想要挖幾層,上面想要蓋幾層,用什麼工法都可以自己決定,只要技術上可行,其實都做得出來。

而 PaaS 則是一個半成品給你接續的著蓋下去,不用會高深的建築技術,已經有些別墅專用、大廈專用、豪宅專用…等半成品的結構給你使用,雖然無法變更梁柱這些重大設計,但是只要略懂一些建築技術,就可以接續蓋下去,省去許多時間與技術學習成本。

無伺服器運算與 SaaS 部分,則可當作用一層與一層中的一戶住家來看,彈性相對少掉不少,最多只能針對室內裝潢設計改變,或者只能改變家具上的改變,其他可以調整的空間就小上了不少,但卻也最方便,不用花太多力氣,只要直接進去入住即可。

為什麼要用 Azure App Service

Azure App Service 與一般市面上的 Web hosting 服務有些雷同,使用上雖然沒有常見的 cPanel 作為後台,但可以依據自身需求,調配出需要的環境,使用技術為客製容器化的技術,預設有許多開發人員常見的 stack ,如 php、python、ruby…等,就好像今天要蓋豪宅、大廈、別墅要用的模板,選擇模板後便能接著蓋下去,當然這邊也有 WordPress 的模板可供使用,蓋下去就直接跑 WordPress 來用了。

如果有參考過 Azure Linux VM 建置 WordPress 完全攻略,可以發現需要非常多的步驟,且如果要弄懂,得具備一定程度的技術能力,這就是 Azure App Service 的相對優點,不用懂太多高深技術,就可以比較輕鬆用滑鼠點一點,就能完成在 Azure 架設出 WordPress 網站。

App Service 與 Web hosting 的最大不同,可以參考下圖,黃色框線為系統業者如 Azure 或 Bluehost 提供的管理服務,使用者很難或不能針對黃色框線的內容,進行修改或調整。

App Service 與 Web hosting 比較圖
App Service 與 Web hosting 比較

可以看到 Azure App Service 仍有一定的規格選、架構調整的權利,如我的 WordPress 要使用什麼樣的運算規格,資料庫要跟 WordPress 本身放一起,還是分開來使用 Azure Database for MySQL 都有一定的選擇,彈性比傳統的 Web hosting 服務多一些。

傳統的 Web hosting 有一些先天上的隱藏限制,以 Bluehost 為例,雖然標榜著無限流量,但資料庫卻有用量上的限制,畢竟羊毛出在羊身上,今天只付出 199元去吃到飽餐廳,要吃到真正的龍蝦、干貝的機率微乎其微,而 Azure 在使用上則是處處都需要付費,包含了流量,每 GB 約台幣 3.x 元,畢竟頻寬也是成本,天下沒有白吃的午餐。

使用 Azure App Service 相對 web hosting 優點

  • 使用彈性高
  • 操作上相對容易
  • 許多功能都包套包好,滑鼠點一點就可直接套用

使用 Azure App Service 相對 web hosting 缺點

  • 費用較為高昂,且每樣服務都幾乎要費用
  • 進入技術門檻稍高
  • 客戶服務需額外付費取得

WordPress On Azure App Service 的架構

前面提到了 Azure App Service 與市面上的 Web hosting 差異,這邊要說明 Azure App Service 的使用架構,可以說與 Azure Linux VM 建置 WordPress 完全攻略 有異曲同工之妙,不過彈性較低,本案例使用 B 方案作為示範。

WordPress on Azure App Service 架構圖
WordPress on Azure App Service 架構

另外需要注意的部分,WordPress 使用 App Service 有兩種,一種為使用 Windows 系統的 App Service ,而一種則為 Linux 系統的 App Service ,兩者差異點為費用,接著是 WordPress on Linux 的 App Service 沒有 A 方案的選擇,資料庫必須分離運作,當然還是有解,但不在本篇介紹範圍內。

Leave a Comment

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *