iThome

PaaS(Platform as a Service)是以服務的型式提供應用程式開發平臺,主要的用戶對象是軟體開發者。PaaS服務供應商會提供軟體開發所需的環境,包括硬體資源、軟體開發工具與開發環境,讓用戶透過網路租用服務,即可開始開發應用程式。

傳統上企業在開始開發軟體前,要先建立開發環境,從採購硬體設備、安裝硬體設備、安裝作業系統、開發環境與工具、資料庫、中介軟體等等,再由軟體開發工程師開始撰寫程式、部署應用程式。而為了維護開發環境的運作,還得仰賴網管與系統管理人員負責後續的維護工作。因此整個軟體開發專案不僅起步慢,還得先投資軟硬體與維護的成本。

相較起來,透過網路來提供服務的PaaS模式,軟硬體的部署與維護都由服務供應商負責,則因為不需要用戶自行建置開發環境,因而可讓軟體開發工作快速啟動,亦不須為了維護開發環境而編配入力,而且PaaS服務供應商是按照使用量來計費,企業就不需要在專案初期就投入較大的成本。

PaaS服務立基於IaaS的雲端基礎,在因應用戶需求的改變時可以伸縮自如,此外,PaaS供應商所提供的軟體開發環境,除了開發工具、整合式開發環境(IDE)之外,還會提供軟體開發生命周期完整的功能,包括整個開發流程從設計、開發、測試到部署,各個階段所需要的管理工具一應俱全。

根據美國國家標準與技術研究院的定義,PaaS服務要能夠讓用戶以供應商支援的程式語言與工具,將自行開發或購買的應用程式部署到雲端架構。用戶不需要管控背後的雲端架構,包括網路、伺服器、作業系統或儲存空間,但可以控制應用程式的部署以及應用程式部署環境的一些設定。

由此定義可見,PaaS服務供應商除了提供虛擬的開發環境與開發工具,還要提供軟體部署功能,讓開發人員寫好的程式碼立即能轉為雲端軟體,或以SaaS模式開始提供服務。

PaaS服務供應商不只要提供軟體開發過程中所需要的功能,還要能成為SaaS服務的平臺,因此必須能夠支援網路服務標準,讓開發人員可以混搭不同型式的雲端服務,組合成新的網路服務,而在服務上線之後所需要的服務監控、流量管理、內容傳遞管理、計費等功能,PaaS服務供應商都要能提供,通常PaaS服務供應商也設立線上軟體市集。幾乎是從開發軟體到上線對外服務,甚至是銷售,這一切的需求PaaS服務供應商都能提供。

Salesforce的PaaS平臺Force.com,就是一個典型的例子,其中包含了多種類型的服務:

●  Appforce:提供開發人員開發網路程式,以拖拉方式即可設計程式介面與產出部分程式碼,Salesforce宣稱80%的工作可以用滑鼠拖拉完成,而撰寫程式碼只占20%。在此平臺上開發的應用,可以輕易轉換為智慧型手機應用,並提供即時分析服務。不過,以此開發的程式會被綁定在該平臺,而不容易轉到其他平臺運行。

●  Siteforce:讓開發人員建立網站服務,提供內容管理、資料庫、網站代管。開發完成的網站即採用Salesforce的雲端基礎設施運作,利用Salesforce的全球內容傳遞網路,而可應付擴充的彈性。

●  VMforce:支援Java應用程式,提供Spring開發環境,亦可在本機開發除錯,再部署至VMforce,以使用Salesforce的雲端基礎設施來運作。該平臺提供負載平衡、災難復原與擴充彈性等功能。

PaaS服務大大地降低了軟體開發的門檻,軟體開發人員只要擁有創意與足夠的開發能力,找到對的PaaS服務供應商,就算是一個人,也可能做出針對全世界用戶的SaaS服務。

 

PaaS vs. SaaS

PaaS與SaaS,有某種程度上的相似性。SaaS是以服務的型式提供軟體,讓使用者不必安裝軟體,透過網路就能用軟體。而PaaS是提供軟體開發相關的軟體,讓開發人員不必建置開發環境所需的軟硬體,透過網路即可使用虛擬的開發環境,來開發應用程式,而開發完成的應用程式,亦可直接以PaaS服務供應商的雲端基礎設備,部署為網站或是SaaS型式的雲端服務。

以Force.com來說,這種PaaS服務,某個層面而言,就像是針對開發人員量身訂做的SaaS服務。它不只是提供一個虛擬的開發環境,整個架構的組件也都以服務的方式來設計,包括基礎設施、Database as a Service、Integration as a Service、Logic as a Service、Application Exchange、User Interface as a Service。

 

 


相關報導請參考「雲端運算徹底了解:基礎篇」


Advertisement

更多 iThome相關內容