對(duì)于PaaS來(lái)說,作為一款可以為客戶提供相對(duì)完善的軟件開發(fā)和部署環(huán)境服務(wù)平臺(tái),雖然在技術(shù)上完全符合現(xiàn)在的技術(shù)發(fā)展趨勢(shì):有低能耗、易部署、上手快、維護(hù)簡(jiǎn)單以及費(fèi)用低廉等特點(diǎn),但是依然處于發(fā)展的初級(jí)階段,包括技術(shù)、平臺(tái)部署開發(fā)以及服務(wù)市場(chǎng)完善等方面依然有一段路要走,需要更多的發(fā)展,在這個(gè)平臺(tái)上開發(fā)者也是最活躍的推動(dòng)者和提升因素。PaaS的發(fā)展將受益于不愿合成中間件組件的應(yīng)用開發(fā)商。云平臺(tái)之所以令人興奮是因?yàn)樗転橛脩籼峁╅_發(fā)、測(cè)試和快速部署所需要的資源,并且成本低廉。現(xiàn)在絕大部分PaaS用戶仍為個(gè)人開發(fā)人員,他們主要是在PaaS平臺(tái)上建立一些相關(guān)的簡(jiǎn)單的應(yīng)用程序。雖然企業(yè)用戶也在增多,但主要是出于開發(fā)和測(cè)試目的。阻礙企業(yè)用戶使用Paas的主要原因是現(xiàn)今的PaaS產(chǎn)品還有很多瑕疵,如安全問題、信息保密問題、服務(wù)質(zhì)量問題等,就連App Engine也不能擔(dān)保其服務(wù)質(zhì)量。
對(duì)于開發(fā)者來(lái)說,因?yàn)樵苹A(chǔ)架構(gòu)通過為應(yīng)用程序的快速開發(fā)和部署提供高效率的工作環(huán)境而獲得了快速發(fā)展,而PaaS通過濾除虛擬機(jī)、操作系統(tǒng)和其他與應(yīng)用程序開發(fā)不相關(guān)的多余細(xì)節(jié),進(jìn)一步簡(jiǎn)化了應(yīng)用程序的開發(fā)過程,從而促使開發(fā)者的工作效率和靈活性均得到了很大的提高。對(duì)于修改現(xiàn)有應(yīng)用程序或者開發(fā)新的應(yīng)用程序,PaaS就是開發(fā)者的一個(gè)更高效的工作環(huán)境。
當(dāng)開源遇到PaaS
在PaaS發(fā)展到現(xiàn)在遇到了一些問題,第一就是主導(dǎo)PaaS市場(chǎng)的編程語(yǔ)言還未出現(xiàn)導(dǎo)致基于PaaS的開發(fā)語(yǔ)言過于繁雜,其次就是現(xiàn)在的PaaS平臺(tái)因?yàn)樵诜菢?biāo)準(zhǔn)框架下的限制,加上依然缺乏多種應(yīng)用服務(wù)的支持能力,導(dǎo)致了很多部署出現(xiàn)問題,最顯著的就是不能將應(yīng)用跨越私有云和公有云進(jìn)行部署。而紅帽、VMware等一系列廠商都通過開源PaaS來(lái)實(shí)現(xiàn)更好的部署效果,也同時(shí)為云計(jì)算環(huán)境而設(shè)計(jì)開源架構(gòu)。
通過開源PaaS平臺(tái),可以更好的讓開發(fā)者在云環(huán)境中部署、運(yùn)行和擴(kuò)展應(yīng)用程序的能力得以大幅提升,并支持種類最為廣泛的公共云和私有云、基于行業(yè)標(biāo)準(zhǔn)的高效開發(fā)框架和應(yīng)用基礎(chǔ)架構(gòu)服務(wù)。
開源PaaS助力開發(fā)者
開發(fā)者在未來(lái)將會(huì)非常喜歡在開源PaaS層次上開發(fā)應(yīng)用程序,因?yàn)樗峁┑倪\(yùn)行環(huán)境相對(duì)高端。同時(shí)開源PaaS基本都會(huì)給開發(fā)者提供一整套開發(fā)和測(cè)試環(huán)境,通過PaaS提供的工具部署一個(gè)應(yīng)用到云上,可能只需幾下鼠標(biāo)點(diǎn)擊和十多秒即可完成。
在PaaS這個(gè)層次上,服務(wù)平臺(tái)可以提供一個(gè)相對(duì)高端的執(zhí)行環(huán)境,開源PaaS平臺(tái)將與基礎(chǔ)設(shè)施相關(guān)的細(xì)節(jié)封裝起來(lái),這樣開發(fā)者不需要面對(duì)如何處理服務(wù)器應(yīng)如何擴(kuò)展,才能使之達(dá)到應(yīng)有的服務(wù)規(guī)模,當(dāng)然也不需思考怎樣在服務(wù)器之間處理負(fù)載平衡、容錯(cuò)。開源PaaS使開發(fā)者面對(duì)的一個(gè)被高度抽象化的執(zhí)行環(huán)境,也為開發(fā)者提供了需要的環(huán)境和工具,這也讓開發(fā)者雖然在開發(fā)程序卻不用仔細(xì)揣摩各種系統(tǒng)運(yùn)行的細(xì)節(jié)。而成熟開源PaaS平臺(tái)服務(wù)提供者一般會(huì)對(duì)于建構(gòu)超大型系統(tǒng)架構(gòu)有著豐富嫻熟的經(jīng)驗(yàn),比如前文提到的紅帽,VMware等。通過其已經(jīng)成熟的平臺(tái)和技術(shù),可以與開源PaaS平臺(tái)相結(jié)合,提供獨(dú)一無(wú)二的應(yīng)用體驗(yàn)。
通過紅帽O(jiān)penShift看開源PaaS
以紅帽O(jiān)penShift為例,它通過JBoss的生態(tài)環(huán)境可以使開發(fā)人員更好的利用業(yè)界最廣泛的中間件服務(wù)。同時(shí)由于OpenShift支持大量的框架和語(yǔ)言,Java、PHP、Python和Ruby等,它可以為云計(jì)算的開發(fā)人員提供更全面的功能集合。
開發(fā)者編寫程序和對(duì)應(yīng)用的提交的方式正在被開源PaaS改變著和改革著,開發(fā)平臺(tái)和服務(wù)應(yīng)用也在行業(yè)中逐漸占據(jù)主動(dòng)地位。紅帽O(jiān)penShift可以為開發(fā)者提供更多的靈活性,同時(shí)它支持用于Java、Python、PHP和Ruby的更多的開發(fā)框架,包括 Spring、Seam、Weld、CDI、Rails、Rack、Symfony、Zend Framework、Twisted、Django和Java E。它包含SQL和NoSQL數(shù)據(jù)存儲(chǔ)和一個(gè)分布式文件系統(tǒng)。紅帽O(jiān)penShift可以讓開發(fā)人員通過在云架構(gòu)、開發(fā)語(yǔ)言和云框架上的支持,來(lái)構(gòu)建、測(cè)試、運(yùn)行和管理相關(guān)應(yīng)用。OpenShift以紅帽JBoss 專業(yè)知識(shí)為基礎(chǔ),同時(shí)擁有者創(chuàng)新的特性,并將PaaS的能力擴(kuò)展到更豐富和更苛刻的應(yīng)用。作為開源技術(shù)的領(lǐng)導(dǎo)之一,紅帽以O(shè)penShift幫助開發(fā)者從PaaS平臺(tái)的鎖定中解放出來(lái),可以讓開發(fā)者自由選擇云提供商。
在企業(yè)級(jí)開發(fā)和云應(yīng)用中,開源PaaS也在逐漸產(chǎn)生著重大的影響。OpenShift也是提供紅帽企業(yè)級(jí)JBoss服務(wù)的第一個(gè)公共 PaaS,可以為企業(yè)級(jí)開發(fā)人員提供更快捷的方式來(lái)部署云環(huán)境和技術(shù)。由于以紅帽在操作系統(tǒng)、虛擬化和JBoss 企業(yè)中間件的經(jīng)驗(yàn)和生態(tài)環(huán)境為基礎(chǔ),OpenShift可以極大的滿足新的云開發(fā)人員和企業(yè)的需要。
在云計(jì)算愈演愈烈的開源時(shí)代,開源PaaS必將成為開發(fā)者未來(lái)的“頂級(jí)夢(mèng)中情人”,而開源技術(shù)發(fā)展中在與PaaS平臺(tái)相結(jié)合的同時(shí),也會(huì)為開發(fā)者提供一個(gè)快速開發(fā)和部署云環(huán)境的一個(gè)利器。