平臺即服務(Platform as a Service,PaaS)是一種提供運算平臺與解決方案的云計算服務,也稱云平臺服務。平臺即服務的主要服務對象是應用程序開發人員,通過分布式技術解決集群系統的協同工作問題。
在平臺即服務中,用戶不需要管理與控制基礎設施,包括網絡、服務器、操作系統或存儲的運行、備份、升級等操作,只需要控制上層的應用程序部署與應用代管的環境,就可以快速開發自己所需要的應用和產品。平臺即服務具備IT資源整合、資源有效分配、開發測試環境統一、自動化交付使用、快捷部署和彈性擴展等特征,八百客的800App、谷歌的App Engine及微軟的Azure都是典型的平臺即服務。
內容介紹
PAAS平臺通過網絡進行程序提供的服務稱之為SaaS(Software as a Service),而云計算時代相應的服務器平臺或者開發環境作為服務進行提供就成為了 PaaS(Platform as a Service)。
事實上,PaaS是位于IaaS和SaaS模型之間的一種云服務,它提供了應用程序的開發和運行環境。IaaS主要提供了虛擬計算、存儲、數據庫等基礎設施服務,SaaS為用戶提供了基于云的應用,PaaS則為開發人員提供了構建應用程序的環境。借助于PaaS服務,你無須過多的考慮底層硬件,并可以方便的使用很多在構建應用時的必要服務,比如安全認證等。
不同的PaaS服務支持不同的編程語言,比如.Net、Java、Ruby等,而有些PaaS支持多種開發語言。由于PaaS層位于IaaS和SaaS之間,所以很多IaaS及SaaS服務商很自然的就在本身的服務中加入了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平臺除了是應用部署平臺外,還需要提供集成和方便構建復合應用的能力,就是高德納咨詢公司所提的iPaaS能力。企業級PaaS平臺不僅僅是應用部署平臺,而且是復雜多租戶環境和復雜應用環境下的共享基礎設施平臺,是On-Premise部署通往公有云部署的必經之路現在擁有PAAS平臺技術的廠商
apaas和ipaas
簡單的說,PaaS平臺就是指云環境中的應用基礎設施服務,也可以說是中間件即服務。PaaS平臺在云架構中位于中間層,其上層是SaaS,其下層是IaaS。在傳統On-Premise部署方式下,應用基礎設施即中間件的種類非常多,有應用服務器,數據庫,ESBs, BPM, Portal, 消息中間件,遠程對象調用中間件等等。對于PaaS平臺,高德納咨詢公司把它們分為兩類,一類是應用部署和運行平臺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平臺應用代表
國內:八百客 用友網絡 新浪SAE 阿里巴巴集團Ali 魔泊云(MoPaaS)
產品風險
平臺即服務(PaaS)上進行網絡應用開發是存在著一定風險漏洞的。具體的威脅風險包括黑客、軟件設計缺陷或者不良的測試方法。這些風險有可能會利用漏洞來影響應用或大幅度降低應用的性能。
通過降低PaaS上SaaS應用開發的風險,云計算架構師和開發人員將會更加深刻地了解他們應用所面對的顯著威脅。然后,只需簡單地實施具有成本效益的保障措施,這些深刻了解就將有助于實現較高的投資回報。通過減少漏洞被利用的頻率,它們還有助于減少災難恢復的成本。
以下是減少PaaS風險的五大步驟:
·資產識別
·漏洞與威脅識別
·風險評估
·應用相關保障措施修補漏洞
·實施風險緩解策略
發展前景
云計算相對來說仍然還不成熟,新服務和功能會一直出現。云開發平臺和PaaS也會在新的功能登場時不斷演變。然而,由于用戶社區對開源軟件的影響很深,因此無法保證新功能會以足夠快的速度出現以滿足你的開發需求。
雖然每個PaaS產品都有著類似的功能,但具備這些功能的速度卻有所不同。例如,Pivotal的開源PaaS產品Cloud Foundry以其對語言的支持,服務整合,以及與其它如Chef,Puppet,Jenkins和NoSQL這樣的開源工具的集成著稱。然而,Cloud Foundry上只提供初步的容器支持,用戶界面主要靠命令行,支持數量有限的軟件部署商業模式以及在應用的性能指標衡量上偏弱。
監控一個平臺的發展路線圖然后再作出決定。那些發展緩慢或者正在經歷某種艱難的發展模式的平臺可能會為你的應用開發團隊和你的業務帶來問題。
模式類型
風險管理生命周期。開發人員可通過風險分析來實施風險緩解程序并確保成本效益。這里所謂的風險,就是指威脅利用一個或多個漏洞的可能性。
應用程序開發生命周期。開發人員可在PaaS上跟蹤SaaS應用程序的開發過程。其中包括了從設計、編碼至部署等階段的需求。
商業流程生命周期。開發人員可以對應用程序進行控制、保護以及優化等操作。作為這一周期的一部分,開發人員可使用電子表格、文字處理、演示文檔以及其他的商業工具。其主要目標就是要改善總體工作流程。
參考資料 >