網誌好讀版:http://hungys.logdown.com/posts/235750-compare-vm-cloudservices-websites
Microsoft Azure 提供了相當多種裝載、部署應用程式的選擇,從虛擬機器 (Virtual Machines)、雲端服務 (Cloud Services) 到網站服務 (Websites),但大多數剛接觸 Azure 的使用者可能還難以理解這三者之間的差別,又或者是不了解雲端運算中 IaaS、PaaS、SaaS 的差異性。本文將就這三個服務做初步的介紹以及比較,希望未來讀者能夠更輕鬆地做選擇。
上圖是取自 Azure 官方網站對於這三個服務差異的說明,很明顯的可以看到用了兩個因子來比較他們的差異,以上手的容易程度來比較的話:網站服務 > 雲端服務 > 虛擬機器,而反過來說,如果以可以控制的程度來比較的話,結果恰好是反過來的結果:網站服務 < 雲端服務 < 虛擬機器,這樣的結論應該可以接受。
假如用更細的元素、架構,從 Application、Data 到 Firewall、Network 甚至是 OS 本身,下面這張圖也可以明顯的看出三者之間的差別。他們之間的關係有點類似 IaaS、PaaS、SaaS 的層次之分,但值得注意的是,即使是最容易上手的網站服務,也應該歸類在 PaaS。 綜合來看,如果需要對服務有最高的控制權、最彈性的設定,則選擇虛擬機器,反之,想要最快速部署,則使用網站服務。
網站服務是屬於 PaaS 層級的服務,其背後是建構在微軟自家的伺服器平台 IIS 之上,也就是在 Windows Server 的環境,但同時也具備了對各種程式語言的支援,不僅僅是 ASP.NET 而已。最大的特點是可以在很短時間內就部署好一個應用程式。
更多細節可參考官方網站:http://azure.microsoft.com/zh-tw/services/websites/
雲端服務同樣是屬於 PaaS 層級的服務,而且是建立在 Windows Server 的基礎之上,與 Websites 相同提供了對多種語言的支援,較大的差別是依照服務需求分為 Web Role 及 Worker Role,前者同樣是建立在 IIS 底下的 Web 服務,後者則是適合一些背景運行的工作。
更多細節可參考官方網站:http://azure.microsoft.com/zh-tw/services/cloud-services/
虛擬機器與前兩者最大差異在於它是一種 IaaS 層級的服務,提供了基礎架構給開發者及 IT 人員。如同您運行在本地的 VM,您擁有完全的主導權,可以在上面安裝各種服務、運行各種應用程式,提供了最彈性的服務。最重要的是,除了 Windows 之外,您也可以選擇諸如 Ubuntu、CentOS 或 SUSE 的 Linux 系統。
[*]支援 Windows 或 Linux
更多細節可參考官方網站:http://azure.microsoft.com/zh-tw/services/virtual-machines/
前文已經針對三個服務做了簡單的介紹以及比較,若想要看更完整的比較表格可以參考官網的文章:Azure 網站、雲端服務與虛擬機器之比較。最後用下面兩張圖作為總結,讓讀者能對三個服務定位的差異有更深刻的印象,他們之間就好比自己「買房」、「租房子」或是「住旅館」的差異,可以說是相當貼切!