PaaS(平台即服務)

menu icon

PaaS(平台即服務)

PaaS(平台即服務)提供完整、靈活且符合成本效益的雲端平台,以利開發、執行與管理應用程式。

何謂 PaaS(平台即服務)?

PaaS(平台即服務)是雲端運算模型,用以提供客戶完整雲端平台(硬體、軟體與基礎架構),以利開發、執行與管理應用程式,完全避免在內部部署建置與維護平台時常出現的成本、複雜性及無彈性。

PaaS 供應商在其資料中心代管所有一切(伺服器、網路、儲存體、作業系統軟體、資料庫、開發工具)。 客戶通常可以支付固定費用以指定特定數量的資源給特定數目的使用者運用,或者他們可以選擇「隨收隨付」計價方式,使用多少資源付多少錢。 如果 PaaS 客戶必須建置與管理自己的內部部署平台,此選項可讓他們更快速且更經濟地建置、測試、部署執行、更新與擴充應用程式。

每一家先進的雲端服務供應商,包括 Amazon Web Services (AWS)、Google Cloud、IBM Cloud 及 Microsoft Azure,都有自己的 PaaS 產品。 另外還有做為開放原始碼專案(例如 Apache Stratos、 Cloud Foundry)或來自軟體供應商(例如 Red Hat OpenShift 和 Salesforce Heroku)的熱門 PaaS 解決方案。

PaaS 的優勢

與內部部署平台相比,PaaS 最常被提到的優勢如下:

  • 加快上市速度。有了 PaaS,就不需要購買與安裝您用來建置並維護應用程式開發平台的軟硬體,也不需要開發團隊等您做完這些事。 您只需要運用雲端服務供應商的 PaaS,就可以開始佈建資源並立即進行開發。
  • 以經濟實惠的方式獲取更廣泛的資源。與大部分組織實際或可負擔的自行維護相比,PaaS 平台通常可針對應用程式堆疊,包括作業系統、中介軟體、資料庫及開發工具,提供您範圍更廣泛的選擇。
  • 更多的試驗自由,但更少的風險。PaaS 還可讓您嘗試或測試新的作業系統、語言及其他工具,完全無需對它們或執行它們所需的基礎架構進行大量投資。
  • 簡易且符合成本效益的可擴充性。採用內部部署平台時,調整規模總是成本高昂,時常很浪費而且有時還不恰當: 您必須購買額外的運算、儲存及網路容量以應付預期的流量激增;其中大部分的容量在低資料流量期間都會閒置,而且無法及時增加以應付意外突增。 有了 PaaS,您可以在有需要時購買額外容量,並立即開始使用它。
  • 擴大開發團隊的靈活性。PaaS 服務提供共用的軟體開發環境,可讓開發和作業團隊透過網際網路連線從任何位置存取其所需要的一切工具。
  • 降低整體成本。顯然,PaaS 可讓組織避開與建置及調整應用程式平台有關的資本設備支出,藉此降低成本。 此外,PaaS 還可以降低或消除軟體授權成本。 PaaS 透過處理修補程式、更新項目及其他管理作業,來降低您的整體應用程式管理成本。

PaaS 的運作方式

一般來說,PaaS 解決方案具有三個主要部分:

  • 雲端基礎架構:包括虛擬機器 (VM)、作業系統軟體、儲存設備、網路功能、防火牆
  • 軟體:用於建置、部署與管理應用程式
  • 圖形使用者介面 (GUI):其中開發或 DevOps 團隊可在其中執行他們在整個應用程式生命週期中的所有工作

PaaS 透過 GUI 線上介面提供所有的標準開發工具,因此開發人員可以從任何地方登入,就專案進行分工合作、測試新應用程式,或部署已完成的產品。 應用程式是在 PaaS 中使用中介軟體設計與開發的。 有了簡化的工作流程,多個開發和作業團隊可以同時處理相同專案。

PaaS 供應商會管理您的大宗雲端運算服務,例如伺服器、執行時期和虛擬化。 身為 PaaS 客戶的貴公司,負責維護應用程式和資料的管理。

PaaS、IaaS 與 SaaS

如同 PaaS,基礎架構即服務 (IaaS) 和軟體即服務 (SaaS) 都是常見的雲端運算服務模式。 事實上,一家組織同時使用這三種模式很常見,即使他們並未分別購買所有三種服務。 澄清說明:

IaaS 是指透過網際網路存取由雲端供應商代管的「原始」 IT 基礎架構,包括實體伺服器、虛擬機器、儲存設備、網路功能、防火牆。IaaS 可消除擁有、管理與維護內部部署基礎架構的成本和工作。 組織可透過 IaaS 提供自己的應用程式平台和應用程式。

任何的 PaaS 產品都必須包含管理它所需的 IaaS 資源,即使那些資源並未離散分佈或被稱為 IaaS 也一樣。

SaaS 是指您透過雲端使用的應用程式軟體,就好像它是安裝在您的電腦上(在某些情況下,有部分 安裝在您的電腦上)。SaaS 可讓您的組織使用應用程式但不需要花錢設置用於執行它的基礎架構,也不用投入精力和人員來維護它(套用錯誤修正程式和更新項目、解決中斷問題等等)。Salesforce 和 Slack 是熱門 SaaS 產品範例;大部分的 Web 應用程式均視為 SaaS。

每個 SaaS 產品都包含管理它所需的 IaaS 資源,至少是執行它所需的 PaaS 元件。 有些 SaaS 供應商也提供離散 PaaS,容許協力廠商自訂 SaaS 產品。

比較 IaaS、PaaS 與 SaaS 的另一種方式是,比較留給客戶的管理數量與留給雲端服務供應商的管理數量:

IaaS、PaaS、無伺服器和 SaaS 將不斷增加的管理責任卸載給雲端供應商

 

進一步閱讀關於 IaaS、PaaS 與 SaaS。

PaaS 使用案例

PaaS 提供整合式的現成平台,並讓組織能夠將基礎架構管理卸載給雲端供應商,以專注於建置、部署與管理應用程式,藉此簡化或推進一些 IT 計劃,包括:

  • API 開發和管理: 因為內建架構的關係,PaaS 可讓團隊以輕鬆很多的方式,來開發、執行、管理與保護 API(應用程式設計介面),以便在應用程式之間共用資料和功能。
  • 物聯網 (IoT): PaaS 可立即支援一系列的程式設計語言(Java、Python、Swift 等等)、用於 IoT 應用程式開發的工具和應用程式環境,而且能夠即時處理 IoT 裝置所產生的資料。
  • 敏捷開發和 DevOps:PaaS 可以提供完全配置好的環境,以自動執行軟體應用程式生命週期,包括整合、交付、保護安全、測試與部署。
  • 雲端移轉和雲端原生開發:憑藉其現成的工具與整合功能,PaaS 可以簡化現有應用程式移至雲端,尤其是透過重建平台(將應用程式移至雲端並進行修改以充分利用雲端的可擴充性、負載平衡及其他功能,)或重構(使用微服務容器及其他的雲端原生技術來重新架構部分或所有的應用程式)。
  • 混合雲策略:混合雲整合了公有雲服務、私有雲服務與內部部署基礎設施,並跨這所有三種服務提供編排、管理和應用程式可攜性。結果產生既統一又靈活的分散式運算環境,其中組織可以在最適合的運算模型中執行與調整其傳統(舊式)或雲端原生工作負載。正確的 PaaS 解決方案可讓開發人員建置一次,然後在混合雲環境中隨處進行部署和管理。

為了特殊用途而建置的 PaaS 類型

許多雲端、軟體與硬體供應商都提供 PaaS 解決方案,以供建置特定類型的應用程式,或與特定類型的硬體、軟體或裝置進行互動的應用程式。

  • AIPaaS(用於人工智慧的 PaaS) 可讓開發團隊建置人工智慧 (AI) 應用程式,無需為了購買、管理與維護這類應用程式所需的龐大運算能力、儲存功能及網路容量而支付高到令咋舌的費用。AiPaaS 通常包括預先訓練好的機器學習深度學習模型(開發人員可以依現狀使用或進行自訂),以及現成的 API (用於將特定的 AI 功能整合到現有或全新應用程式中,例如語音辦識或語音轉文字等功能)。
  • iPaaS(整合平台即服務)是用於整合應用程式的雲端代管解決方案。iPaaS 為組織提供一種標準化方式,以在公有雲、私有雲和內部部署環境之間連接資料、處理程序及服務,完全無需購買、安裝與管理自己的後端整合硬體、中介軟體和軟體。(請注意,PaaS 解決方案通常包括某種程度的整合功能像 API 管理,但 iPaaS 則更加全面。)
  • cPaaS(通訊平台即服務)是一種 PaaS,其可讓開發人員輕鬆將語音(入埠和出埠通話)、影片(包括電話會議)及傳訊(文字和社交媒體)功能新增至應用程式中,完全無需投資購買專門的通訊軟硬體。
  • mPaaS(行動式平台即服務)是一種 PaaS ,其可簡化行動式裝置的應用程式開發。mPaaS 通常提供低程式碼(甚至簡單的拖放)方法以存取裝置特定功能,包括電話的相機、麥克風、動作感應器和地理定位(或 GPS)功能。

PaaS 與 IBM Cloud

IBM 提供多元的可擴充式 PaaS 解決方案,以利從零開始開發雲端原生應用程式,或更新現有應用程式以從雲端的彈性和可擴充性獲益。

IBM Red Hat OpenShift on IBM Cloud 是一種完全受管理的 OpenShift 服務,其運用 IBM Cloud 的企業規模和安全性來自動執行更新、規模調整及佈建,以及處理意外的資料流量突增。您的團隊可以透過一系列的工具與功能來啟動開發和應用程式現代化,然後一鍵部署高可用的完全受管理叢集。IBM Red Hat OpenShift on IBM Cloud 在 The Forrester Wave: Multiccloud Container Development Platforms,2020 年第三季 (PDF, 415 KB) 報告中獲選為領導者。

IBM Cloud Pak for Applications 協助您將現有應用程式現代化、內嵌更多的安全性,並開發新的應用程式以利發動數位計劃。 它提供能快速傳遞價值的雲端原生開發解決方案,搭配靈活的授權,可根據您的特定需求量身打造。

若要在開始使用 IBM Cloud 上的 PaaS,請註冊 IBMid 並建立您的 IBM Cloud 帳戶