2019-03-18 09:42:50分類:云服務(wù)端開發(fā)12365
作為一個互聯(lián)網(wǎng)公司或提供互聯(lián)網(wǎng)服務(wù)的公司,其核心的技術(shù)資產(chǎn)就是云端平臺和云端平臺上的服務(wù)。
我們通常所說的云服務(wù)或云平臺廣義上是一個概念,但其實內(nèi)部是兩個部分。
1.支撐云服務(wù)運行的硬件和軟件系統(tǒng)環(huán)境(云架構(gòu)平臺,簡稱云平臺);
2.實現(xiàn)業(yè)務(wù)邏輯,支持客戶應(yīng)用,對外提供服務(wù)的應(yīng)用服務(wù)平臺(云服務(wù)平臺,簡稱云服務(wù))。
一、云服務(wù)——選擇
云服務(wù)的核心重點在于架構(gòu)的設(shè)計。
軟件架構(gòu)是一個包含各種組件的軟件系統(tǒng)結(jié)構(gòu),這些組件包括但不限于:接口服務(wù),應(yīng)用服務(wù),數(shù)據(jù)庫服務(wù),緩存服務(wù),消息服務(wù),日志服務(wù),存儲服務(wù),網(wǎng)絡(luò)及通訊服務(wù)等等, 它們彼此存在關(guān)聯(lián)或和平臺環(huán)境存在關(guān)聯(lián)。系統(tǒng)架構(gòu)設(shè)計的目標(biāo)和目的就是協(xié)調(diào)和解決這些組件的邊界相關(guān)點。
當(dāng)前,我們的軟件服務(wù)已經(jīng)進(jìn)入云計算時代,一個系統(tǒng)所服務(wù)的對象已經(jīng)不再限于單個項目或企業(yè),也不再限于單一行業(yè)或同類用戶,甚至服務(wù)提供者都無法預(yù)知消費服務(wù)的對象。
在這樣的服務(wù)消費時代背景下,一個需要全方位,多角度,多維度提供服務(wù)的架構(gòu)方案已成為必然,微服務(wù)架構(gòu)也自然應(yīng)運而生。
微服務(wù)架構(gòu)區(qū)別于傳統(tǒng)架構(gòu)的重要特點:
·模塊以服務(wù)劃分而非項目;
·模塊獨立部署且相互隔離;
·模塊通訊用輕量級API調(diào)用。
時代必然,我們的云服務(wù)選擇的是微服務(wù)架構(gòu)。
二、云服務(wù)——解讀
1.服務(wù)拆分
服務(wù)按業(yè)務(wù)拆分這是水平維度的拆分,服務(wù)按技術(shù)實現(xiàn)前后端分離這是垂直維度的拆分,水平垂直兩個維度的拆分把服務(wù)分成小塊狀,這是微服務(wù)中"微"思想的體現(xiàn)。
2.服務(wù)獨立
服務(wù)獨立,需要相互調(diào)用提供完整業(yè)務(wù)邏輯,我需要其它服務(wù),其它服務(wù)也需要我,我為人人,人人為我,這是微服務(wù)中"服務(wù)"思想的體現(xiàn)。
3.服務(wù)調(diào)用
HTTP(S)+JSON采用輕量級通訊協(xié)議和簡單數(shù)據(jù)結(jié)構(gòu):服務(wù)間不再需要關(guān)心對方模型和實現(xiàn),僅通過事先約定好的接口來進(jìn)行數(shù)據(jù)流轉(zhuǎn)即可,這是微服務(wù)中"解耦"思想的體現(xiàn)。
4.服務(wù)部署
正因為服務(wù)獨立,所以每個服務(wù)都可以單獨部署,每個服務(wù)都可以獨立擴(kuò)展,也可以獨立建立負(fù)載。
綜上所述,微服務(wù)可以體現(xiàn)出以下幾點優(yōu)勢:
·開發(fā)效率更高;
·溝通成本更低;
·響應(yīng)速度更快;
·迭代周期更短。
解讀:
每個微服務(wù)結(jié)構(gòu)獨立,功能專一,規(guī)模很小,功能明確,能夠被團(tuán)隊快速開發(fā)和迭代;
每個微服務(wù)之間是松耦合的,接口確定后無需關(guān)注實現(xiàn),不會產(chǎn)歧義,減少協(xié)調(diào)溝通成本;
每個微服務(wù)都可以獨立部署,快速實現(xiàn)新功能、新需求而不會對整個系統(tǒng)產(chǎn)生影響。
三、Pivotal與微服務(wù)
很長一段時間以來,Pivotal都是云原生、微服務(wù)背后的巨人,這些概念被認(rèn)知程度已經(jīng)高過Pivotal自身的品牌。比如微服務(wù)火爆后被帶熱的Spring系列技術(shù),但是很多人并不知道Pivotal才是Spring技術(shù)的擁有者。
在Pivotal成立之前,Cloud Foundry一直由VMware在推動,擁有大量開源用戶。在Pivotal成立之后,正式發(fā)布Pivotal Cloud Foundry (PCF) 1.0版本。
從2016年開始,Pivotal開始支持Docker在企業(yè)環(huán)境中的運行;也支持把Spring Cloud引入PCF平臺,以實現(xiàn)微服務(wù)化的應(yīng)用。
目前Pivotal擁有Spring Boot、Spring Cloud和Spring Cloud Data Flow,用以構(gòu)建微服務(wù)、治理微服務(wù)、連接微服務(wù)數(shù)據(jù)。