PAAS平台

一種商業模式

PAAS平台即(Platform-as-a-Service:平台即服務),把應用服務的運行和開發環境作為一種服務提供的商業模式

內容介紹


PAAS平台通過網路進行程序提供的服務稱之為SaaS(Software as a Service),而雲計算時代相應的伺服器平台或者開發環境作為服務進行提供就成為了 PaaS(Platform as a Service)。
事實上,PaaS是位於IaaS和SaaS模型之間的一種雲服務,它提供了應用程序的開發和運行環境。IaaS主要提供了虛擬計算、存儲、資料庫等基礎設施服務,SaaS為用戶提供了基於雲的應用,PaaS則為開發人員提供了構建應用程序的環境。藉助於PaaS服務,你無須過多的考慮底層硬體,並可以方便的使用很多在構建應用時的必要服務,比如安全認證等。
不同的PaaS服務支持不同的編程語言,比如.Net、JavaRuby等,而有些PaaS支持多種開發語言。由於PaaS層位於IaaS和SaaS之間,所以很多IaaS及SaaS服務商很自然的就在本身的服務中加入了PaaS,打造成一站式的服務體系。
PAAS平台
PAAS平台

產品定義


PaaS(Platform-as-a-Service:平台即服務)全稱:(Platform as a service)中文: 平台即服務所謂PaaS實際上是指將軟體研發的平台(計世資訊定義為業務基礎平台)作為一種服務,以SaaS的模式提交給用戶。因此,PaaS也是SaaS模式的一種應用。但是,PaaS的出現可以加快SaaS的發展,尤其是加快SaaS應用的開發速度。在2007年國內外SaaS廠商先後推出自己的PAAS平台。PAAS之所以能夠推進SaaS的發展,主要在於它能夠提供企業進行定製化研發的中間件平台,同時涵蓋資料庫和應用伺服器等。PAAS可以提高在Web平台上利用的資源數量。例如,可通過遠程Web服務使用數據即服務(Data-as-a-Service:數據即服務),還可以使用可視化的API。用戶或者廠商基於PaaS平台可以快速開發自己所需要的應用和產品。同時,PaaS平台開發的應用能更好地搭建基於SOA架構的企業應用。

產品特點


PaaS能將現有各種業務能力進行整合,具體可以歸類為應用伺服器、業務能力接入、業務引擎、業務開放平台,向下根據業務能力需要測算基礎服務能力,通過IaaS提供的API調用硬體資源,向上提供業務調度中心服務,實時監控平台的各種資源,並將這些資源通過API開放給SaaS用戶。PaaS主要具備以下三個特點:(1)平台即服務:PaaS所提供的服務與其他的服務最根本的區別是PaaS提供的是一個基礎平台,而不是某種應用。在傳統的觀念中,平台是向外提供服務的基礎。一般來說,平台作為應用系統部署的基礎,是由應用服務提供商搭建和維護的,而PaaS顛覆了這種概念,由專門的平台服務提供商搭建和運營該基礎平台,並將該平台以服務的方式提供給應用系統運營商;(2)平台及服務:PaaS運營商所需提供的服務,不僅僅是單純的基礎平台,而且包括針對該平台的技術支持服務,甚至針對該平台而進行的應用系統開發、優化等服務。PaaS的運營商最了解他們所運營的基礎平台,所以由PaaS運營商所提出的對應用系統優化和改進的建議也非常重要。而在新應用系統的開發過程中,PaaS運營商的技術諮詢和支持團隊的介入,也是保證應用系統在以後的運營中得以長期、穩定運行的重要因素;(3)平台級服務:PaaS運營商對外提供的服務不同於其他的服務,這種服務的背後是強大而穩定的基礎運營平台,以及專業的技術支持隊伍。這種“平台級”服務能夠保證支撐SaaS或其他軟體服務提供商各種應用系統長時間、穩定的運行。PaaS的實質是將網際網路的資源服務化為可編程介面,為第三方開發者提供有商業價值的資源和服務平台。有了PaaS平台的支撐,雲計算的開發者就獲得了大量的可編程元素,這些可編程元素有具體的業務邏輯,這就為開發帶來了極大的方便,不但提高了開發效率,還節約了開發成本。有了PaaS平台的支持,WEB應用的開發變得更加敏捷,能夠快速響應用戶需求的開發能力,也為最終用戶帶來了實實在在的利益。

企業級別


雲計算起源於大型網際網路企業。對於網際網路企業,成本壓力和指數級的業務增長壓力使他們關注於物理資源的利用率和應用的可擴展性。在應用伺服器這層,通過Cluster Session來實現水平擴展;在數據存儲這層,採用基於BASE模型的NOSQL數據存儲來實現擴展。
(1)基於商業軟體的部署方式:Application- Framework/Libs - Websphere/Weblogic + RDBMS(2)基於開源軟體的部署方式:Application - Frameworks/Libs - Tomcat/JBoss + RDBMS(3)雲環境下的部署方式:Application - Frameworks/Libs - PaaS(Goole App Engine, Amazon)這種情況下,PaaS實質上就是一個預先裝好的Web Container和一組公共服務,如數據存儲服務(不一定是關係型資料庫)、消息隊列、集中式session及cache等等。對於個人用戶或者簡單應用來說,公有雲PaaS平台使得開發人員僅關注應用邏輯開發本身,不用把精力花費在基礎實施和應用的擴展和維護上。所謂企業級PaaS平台,主要包含兩類,一是大型企業內部的私有雲PaaS平台,另一類是面向ISV廠商的PaaS平台。然而對於企業級PaaS平台,PaaS不僅僅是雲環境下的應用部署平台。拋開安全問題不講,私有雲PaaS平台和公有雲PaaS有如下核心區別:(1)複雜的多租戶模型:對於公有雲PaaS平台,其租戶模型是(用戶-> 應用 -> 應用實例),一個用戶可以部署多個應用,每個應用可以有多個運行時實例,應用實例共享資源池。對於一個大型企業,一個大部門可能是一個租戶,大部門下面的子部門也是一個租戶;或者一個SaaS應用系統的一個實例就是一個租戶。對於租戶的資源使用,大部門租戶是共享資源池裡面的資源,也可能某些關鍵租戶需要獨佔一些資源以保證安全。(2)已有應用的兼容:企業的歷史應用都是基於關係型資料庫的,某些PaaS平台不支持關係型數據存儲,即使是簡單的已有應用都無法遷移到PaaS平台上。(3)複合應用的構建: 企業On-Premise應用在很長一段時間內都是要存在的,私有雲PaaS平台要成為On-Premise和公有雲之間的橋樑。私有雲PaaS平台除了是應用部署平台外,還需要提供集成和方便構建複合應用的能力,就是Gartner所提的iPaaS能力。企業級PaaS平台不僅僅是應用部署平台,而且是複雜多租戶環境和複雜應用環境下的共享基礎設施平台,是On-Premise部署通往公有雲部署的必經之路現在擁有PAAS平台技術的廠商
apaas和ipaas
簡單的說,PaaS平台就是指雲環境中的應用基礎設施服務,也可以說是中間件即服務。PaaS平台在雲架構中位於中間層,其上層是SaaS,其下層是IaaS。在傳統On-Premise部署方式下,應用基礎設施即中間件的種類非常多,有應用伺服器,資料庫,ESBs, BPM, Portal, 消息中間件,遠程對象調用中間件等等。對於PaaS平台,Gartner把它們分為兩類,一類是應用部署和運行平台APaaS(application platform as a service),另一類是集成平台IPaaS(integration as a service)。人們經常說的PaaS平台基本上是指APaaS。
paas對網際網路產業的影響
平台即服務(Platformas a Service, PaaS)是軟體即服務(Software as a Service, SaaS)的延伸。SaaS提供的是定製好的遠程軟體服務,比如當你訂購一個網路銷售系統軟體,就可以直接使用,不需要代碼開發,但是缺點是客制化困難。PaaS也是遠程訂購服務,但是你購買的是平台模塊服務,如計算能力、資料庫、儲存和消息傳送等。底層的平台已¾¬幫你鋪建好,你需要開發自己的上層應用。
首先,技術門檻降低讓應用更容易生成,而間接鼓勵更多的商業模式創新。尤其是資金花在軟體和硬體的比例會減低,給初創公司帶來更大的生存空間;再來,可以有更多的平台服務架構在現有的PaaS上(Platform over PaaS),使得服務的種類多樣化。這也會促成生態鏈的形成;最後,公司的合併門檻減低,如果兩家公司用的是同一個平台服務,那麼就沒有技術整合的問題了。當然,PaaS要大力發展還是有一些困難得克服,例如vendor lock-in,也就是說API和數據都還不是標準化,使得應用遷移變得複雜。再者,網路的連接性也是一大問題——當你的應用因為任何一端的網路而沒辦法連上平台服務時,你可能沒有任何其他的備份方案。最後,老實說國內的網際網路產業要能真正提供PaaS還有一段路得走,畢竟技術門檻不是太低,尤其是分散式計算的構建不是一蹴而就的。
PAAS平台應用代表
國外:GoogleSalesforce、Amazon
國內:八百客 用友 新浪SAE 阿里Ali 魔泊雲(MoPaaS)

產品風險


平台即服務(PaaS)上進行網路應用開發是存在著一定風險漏洞的。具體的威脅風險包括黑客、軟體設計缺陷或者不良的測試方法。這些風險有可能會利用漏洞來影響應用或大幅度降低應用的性能。
通過降低PaaS上SaaS應用開發的風險,雲計算架構師和開發人員將會更加深刻地了解他們應用所面對的顯著威脅。然後,只需簡單地實施具有成本效益的保障措施,這些深刻了解就將有助於實現較高的投資回報。通過減少漏洞被利用的頻率,它們還有助於減少災難恢復的成本。
以下是減少PaaS風險的五大步驟:
·資產識別
·漏洞與威脅識別
·應用相關保障措施修補漏洞
·實施風險緩解策略

發展前景


雲計算相對來說仍然還不成熟,新服務和功能會一直出現。雲開發平台和PaaS也會在新的功能登場時不斷演變。然而,由於用戶社區對開源軟體的影響很深,因此無法保證新功能會以足夠快的速度出現以滿足你的開發需求。
雖然每個PaaS產品都有著類似的功能,但具備這些功能的速度卻有所不同。例如,Pivotal的開源PaaS產品Cloud Foundry以其對語言的支持,服務整合,以及與其它如Chef,PuppetJenkinsNoSQL這樣的開源工具的集成著稱。然而,Cloud Foundry上只提供初步的容器支持,用戶界面主要靠命令行,支持數量有限的軟體部署商業模式以及在應用的性能指標衡量上偏弱。
監控一個平台的發展路線圖然後再作出決定。那些發展緩慢或者正在經歷某種艱難的發展模式的平台可能會為你的應用開發團隊和你的業務帶來問題。

模式類型


風險管理生命周期。開發人員可通過風險分析來實施風險緩解程序並確保成本效益。這裡所謂的風險,就是指威脅利用一個或多個漏洞的可能性。
應用程序開發生命周期。開發人員可在PaaS上跟蹤SaaS應用程序的開發過程。其中包括了從設計、編碼至部署等階段的需求。
商業流程生命周期。開發人員可以對應用程序進行控制、保護以及優化等操作。作為這一周期的一部分,開發人員可使用電子表格、文字處理、演示文檔以及其他的商業工具。其主要目標就是要改善總體工作流程。