中間件棧增加了層以及對(duì)輕量應(yīng)用的開發(fā)需求將導(dǎo)致更好的云訪問(wèn)。
過(guò)去10年,軟件的開發(fā)和部署方式已經(jīng)出現(xiàn)了巨大的轉(zhuǎn)變。2005年初時(shí),企業(yè)服務(wù)總線還很流行,而云尚處在青春期,還在等待這Amazon EC2/S3的降臨?,F(xiàn)在,開發(fā)者可以利用的技術(shù)數(shù)量出現(xiàn)了爆發(fā)式增長(zhǎng),云的無(wú)所不在增加了中間件棧的層次,據(jù)專家說(shuō)。
總部位于英國(guó)烏斯特郡的咨詢公司C2B2的首席顧問(wèn)Matt Brasier說(shuō),所有現(xiàn)有技術(shù)經(jīng)過(guò)10年的發(fā)展已經(jīng)極大地成熟了,為中間件棧開發(fā)者和應(yīng)用架構(gòu)師提供了更多的多樣性。這一架構(gòu)性選擇延伸到了SQL存儲(chǔ) 等組件,使得開發(fā)者可以選擇最適合于被開發(fā)應(yīng)用的技術(shù),他補(bǔ)充道。
給中間件棧增加層
10年前,開發(fā)者要對(duì)付的只有3層:接入層、業(yè)務(wù)邏輯層以及用戶接口層,Brasier說(shuō)。但隨著中間件棧變得越來(lái)越與服務(wù)相關(guān),那些嚴(yán)格的層消失 了?,F(xiàn)在,面向業(yè)務(wù)的服務(wù)和集成層使得開發(fā)者將服務(wù)與應(yīng)用捆綁在一起,集成層成為了中間件棧新的一層。集成層位于瘦很多的業(yè)務(wù)層的上面,而用戶接口層則是 在集成層的上面,他說(shuō)。
集成、API、移動(dòng)或其他層,所有這些附加均未對(duì)中間件層造成損害,這是總部位于科羅拉多州Evergreen的Savoir Technologies CTO Jeff Genender的說(shuō)法。按照他的看法,移動(dòng)和API層實(shí)際上是一回事,且有賴于前端應(yīng)用是干什么的,比方說(shuō),在開發(fā)中的GUI是否適應(yīng)移動(dòng)設(shè)備,他說(shuō)。
“移動(dòng)產(chǎn)品應(yīng)該能夠利用全服務(wù)產(chǎn)品所用的同一個(gè)API,但要小心它在API內(nèi)的用量有多少,” Genender說(shuō)。但是移動(dòng)并不是一個(gè)獨(dú)立的層;而是相對(duì)于微服務(wù)的端點(diǎn)—而這無(wú)論它是通過(guò)節(jié)點(diǎn)應(yīng)用還是PHP端點(diǎn)來(lái)完成,一般都是利用RESTful 服務(wù)或JSON實(shí)現(xiàn)來(lái)完成的,他補(bǔ)充道。
應(yīng)用變得越來(lái)越輕量
隨著開發(fā)者和應(yīng)用架構(gòu)師對(duì)一個(gè)錯(cuò)誤就能導(dǎo)致整個(gè)應(yīng)用癱瘓的現(xiàn)狀感到厭煩,單容器部署—像開發(fā)界WebSpheres和JBosses這樣的一體應(yīng)用 服務(wù)器已經(jīng)逐漸淡出到后臺(tái),Genender說(shuō):“在必須升級(jí)或更新軟件時(shí),你得把整個(gè)系統(tǒng)關(guān)閉,或者要有一個(gè)相當(dāng)復(fù)雜的滾動(dòng)部署,”他補(bǔ)充道。
然而,微服務(wù)是輕量的,在應(yīng)用部署上采取了更加聯(lián)邦的方式,這使得開發(fā)者可以在不同的服務(wù)、位置或容器中使用多個(gè)端點(diǎn),Genender說(shuō)。這使拿掉一部分比例的應(yīng)用成為可能,這樣軟件就可以實(shí)時(shí)更新了。“這提高了正常運(yùn)行時(shí)間,并增加了軟件的可維護(hù)性”他說(shuō)。
云需要輕量應(yīng)用
混合云和云部署對(duì)中間件棧產(chǎn)生了巨大影響。更輕量的應(yīng)用采用微服務(wù),這使得它們可以很好地適應(yīng)基于云的環(huán)境,據(jù)Genender說(shuō)。因?yàn)樗鼈兪禽p量的,所以他們沒(méi)有繁重的內(nèi)存且處理器需求也不高,而由于微服務(wù)是聯(lián)邦式、分布式的,可以在任何地方部署,他說(shuō)。
“你需要在小一點(diǎn)的封裝內(nèi)工作,這里沒(méi)有地方容納一體式應(yīng)用服務(wù)器,” Genender說(shuō)?;谠频膽?yīng)用的全部要點(diǎn)是輕量、能快速且有成效地加速應(yīng)用和新功能的推出,這不可能發(fā)生在數(shù)G大小需要大量處理能力的應(yīng)用身上。“這 就是這一變化的推動(dòng)力,搬到云端、更小的處理器、更多的分布式,”他說(shuō)。
按照C2B2的Brasier的說(shuō)法,服務(wù)的另一大驅(qū)動(dòng)力是靈活性。在與云應(yīng)用集成時(shí),開發(fā)的最佳實(shí)踐是訪問(wèn)服務(wù)的靈活性,而不是把組件嵌入到應(yīng)用中,他說(shuō)。
“開發(fā)出成功應(yīng)用的人是通過(guò)創(chuàng)建服務(wù),然后再結(jié)合應(yīng)用和業(yè)務(wù)流程來(lái)做到的,” Brasier說(shuō),指出這一切都是通過(guò)服務(wù)流轉(zhuǎn)的。這些結(jié)構(gòu)已經(jīng)成為了適應(yīng)云需求的必要,這已成為提供服務(wù)的一大驅(qū)動(dòng)力,他補(bǔ)充道。
有的也許會(huì)說(shuō)多一事不如少一事,但是根據(jù)專家的說(shuō)法,在中間件棧增加層已經(jīng)體現(xiàn)出好處。隨著對(duì)輕量型應(yīng)用、服務(wù),尤其是微服務(wù)的需求在增長(zhǎng),這些將會(huì)成為云訪問(wèn)的預(yù)期基礎(chǔ)。
分享到微信 ×
打開微信,點(diǎn)擊底部的“發(fā)現(xiàn)”,
使用“掃一掃”即可將網(wǎng)頁(yè)分享至朋友圈。