淺談企業(yè)服務(wù)整合平臺系統(tǒng)建設(shè)
一、背景介紹
近兩年G行分布式服務(wù)體系能力不斷提高,初步形成服務(wù)化生態(tài);服務(wù)網(wǎng)格、容器云、虛擬化技術(shù)逐步在生產(chǎn)環(huán)境實施及推廣,為服務(wù)整合的實現(xiàn)提供了有效的技術(shù)支撐。與此同時,隨著G行業(yè)務(wù)快速發(fā)展,應(yīng)用系統(tǒng)數(shù)量快速增加、系統(tǒng)間調(diào)用關(guān)系日趨復(fù)雜;整合場景和業(yè)務(wù)需求的數(shù)量和復(fù)雜度均持續(xù)增加;投產(chǎn)頻度增高、周期縮短,敏捷發(fā)布常態(tài)化。為適應(yīng)業(yè)務(wù)發(fā)展和科技能力提升的需要,企業(yè)服務(wù)整合平臺應(yīng)運而生。
二、平臺建設(shè)目標(biāo)
此前G行分布式服務(wù)體系缺少具備統(tǒng)一規(guī)范的服務(wù)整合技術(shù)支撐平臺和相應(yīng)的可共享服務(wù)整合能力。而G行的分布式服務(wù)體系已涵蓋超過60個系統(tǒng),近100個服務(wù),形成了一定生態(tài)規(guī)模,因此啟動了企業(yè)服務(wù)整合平臺的建設(shè)。企業(yè)服務(wù)整合平臺建設(shè)主要有以下關(guān)鍵目標(biāo):
填補能力空白,建立分布式服務(wù)體系下的服務(wù)整合能力,提供可共享的公共業(yè)務(wù)能力整合,提升業(yè)務(wù)需求實現(xiàn)的質(zhì)量和效率。
推進服務(wù)治理,豐富企業(yè)服務(wù)治理工具和手段,立足平臺展開服務(wù)治理試點延伸。
降低體系內(nèi)業(yè)務(wù)服務(wù)開發(fā)復(fù)雜度,提升研發(fā)效率,形成分布式服務(wù)體系業(yè)務(wù)設(shè)計、開發(fā)、測試、發(fā)布、運維的全生命周期研發(fā)模式,提升G行業(yè)務(wù)需求開發(fā)效率,增強企業(yè)競爭力。
復(fù)用解決方案,降低業(yè)務(wù)服務(wù)設(shè)計及實施復(fù)雜度,建立共享的服務(wù)整合實現(xiàn)案例庫。
三、企業(yè)服務(wù)整合平臺系統(tǒng)設(shè)計
3.1系統(tǒng)間功能分布設(shè)計
結(jié)合G行服務(wù)化轉(zhuǎn)型架構(gòu)規(guī)劃及分布式服務(wù)體系建設(shè)現(xiàn)狀,企業(yè)服務(wù)整合平臺將負責(zé)分布式服務(wù)體系服務(wù)整合場景的實現(xiàn)和以服務(wù)接口形式的整合功能發(fā)布。相關(guān)整合場景以多個服務(wù)接口自動化調(diào)用處理的短流程模式,形成局部可共享的業(yè)務(wù)能力。
基于企業(yè)視角,統(tǒng)籌規(guī)劃,建設(shè)通用服務(wù)整合平臺,通過服務(wù)編排實現(xiàn)服務(wù)整合,組合后生成的新服務(wù)注冊至企業(yè)分布式服務(wù)平臺,相關(guān)服務(wù)也可被再次組合,形成專業(yè)應(yīng)用服務(wù)之外的組合服務(wù)能力。
3.2重要功能模塊及分布
整合場景設(shè)計開發(fā)模塊
整合開發(fā)IDE和平臺設(shè)計開發(fā)管理流程,在過程中,形成整合場景資產(chǎn)沉淀。包括整合工程需求關(guān)聯(lián)、設(shè)計描述、測試案例,將跟隨服務(wù)整合工程完整生命周期,進行規(guī)范化資產(chǎn)化管理。
整合場景綜合管理模塊
針對已投產(chǎn)服務(wù)整合工程形成的服務(wù)接口,進行全生命周期管理;根據(jù)服務(wù)接口被調(diào)和主調(diào)關(guān)系,對接口及邏輯變更進行分析和流程化管理;針對服務(wù)整合場景調(diào)用SLA進行統(tǒng)計分析,結(jié)合調(diào)用關(guān)系支持進一步服務(wù)治理。
平臺運維監(jiān)控模塊
提供平臺、節(jié)點、整合工程場景粒度的監(jiān)控和運維能力。包括基于腳本的人工應(yīng)急處置機制。
平臺應(yīng)用網(wǎng)關(guān)
平臺應(yīng)用網(wǎng)關(guān)除分布式服務(wù)體系集成、接口發(fā)布、負載均衡能力外,計劃實現(xiàn)可配置路由、流控、接口鑒權(quán)等升級能力。
批量對賬服務(wù)模塊
實現(xiàn)對賬業(yè)務(wù)場景。
平臺整合場景運行實例節(jié)點
基于平臺微服務(wù)運行框架,實現(xiàn)基于容器云、應(yīng)用運行框架,支持服務(wù)整合工程場景粒度的接口發(fā)布和運行。
四、面臨的主要問題及解決方案
企業(yè)服務(wù)整合平臺作為基于業(yè)務(wù)場景提供交易請求的系統(tǒng),會遇到各種各樣的交易和業(yè)務(wù)場景,那么如何對各業(yè)務(wù)場景進行解耦,如何處理慢交易等特殊業(yè)務(wù)場景,以及當(dāng)整合平臺的業(yè)務(wù)場景達到一定規(guī)模時候如何進行擴縮容,都是非常值得思考并通過細致設(shè)計加以解決的問題。為此,企業(yè)服務(wù)整合平臺提供了分組路由、平臺孵化等機制應(yīng)對這些問題。
平臺網(wǎng)關(guān)分組路由機制
目前G行自主研發(fā)平臺基于原生Spring Gateway實現(xiàn)分組化路由,企業(yè)整合平臺將在此基礎(chǔ)上補充基于服務(wù)名和業(yè)務(wù)場景的后臺服務(wù)分組路由功能。企業(yè)服務(wù)整合平臺針對慢交易等特殊業(yè)務(wù)場景,設(shè)置特定的運行節(jié)點組或者獨立子應(yīng)用服務(wù)單元,獨立運行這類交易場景。同時企業(yè)服務(wù)整合平臺采用全棧VBC容器云環(huán)境部署,可以實現(xiàn)運行節(jié)點靈活擴容,形成臨時分組。
企業(yè)整合平臺孵化機制
當(dāng)平臺基于業(yè)務(wù)域積累一定規(guī)模業(yè)務(wù)場景案例后,企業(yè)服務(wù)整合平臺即可提供服務(wù)靈活拆分及領(lǐng)域孵化機制。如該應(yīng)用具備孵化條件,可獨立立項拆分,從企業(yè)級服務(wù)注冊中心申請新服務(wù)名,采用服務(wù)整合平臺相同的技術(shù)架構(gòu),自平臺分離或新建應(yīng)用和數(shù)據(jù)庫資源進行獨立部署,形成全新的某業(yè)務(wù)領(lǐng)域服務(wù)整合平臺。
五、平臺服務(wù)架構(gòu)原則
企業(yè)服務(wù)整合平臺提供大量業(yè)務(wù)交易整合場景,確定服務(wù)集成范圍及集成原則將至關(guān)重要。基于此,企業(yè)整合平臺提出了平臺整合服務(wù)原則和應(yīng)用服務(wù)原則,作為對業(yè)務(wù)場景接入整合平臺、服務(wù)子應(yīng)用化和整合平臺業(yè)務(wù)域孵化的依據(jù)。
平臺整合服務(wù)原則:
- 服務(wù)共享原則:整合后場景接口原則上其應(yīng)用場景具備為多個消費方提供服務(wù)的可能。
- 服務(wù)整合原則:整合場景調(diào)用接口應(yīng)來自兩個或兩個以上服務(wù)(系統(tǒng)),且整合場景中單一服務(wù)所提供接口不應(yīng)超過50%。(除總前服務(wù)交換網(wǎng)關(guān))該場景應(yīng)優(yōu)先由后臺服務(wù)進行整合。
- 服務(wù)范圍原則:整合平臺向分布式服務(wù)體系內(nèi)作為整合場景調(diào)用方的應(yīng)用提供整合服務(wù),且不直接向各類客戶端或業(yè)務(wù)人員直接提供服務(wù)能力。
- 數(shù)據(jù)處理原則:由于平臺圍繞服務(wù)整合流程進行處理,所有業(yè)務(wù)場景所需業(yè)務(wù)數(shù)據(jù)均依賴相關(guān)后臺服務(wù)通過服務(wù)接口提供。
- 邏輯處理原則:整合平臺具備提供整合過程中的簡單業(yè)務(wù)邏輯處理,如遇復(fù)雜邏輯實現(xiàn)的場景,應(yīng)由后臺服務(wù)提供相關(guān)能力
平臺應(yīng)用服務(wù)原則:
- 平臺實施優(yōu)先級原則:服務(wù)整合平臺主要為企業(yè)通用整合場景提供服務(wù)化支持,自治子應(yīng)用在未成熟前在平臺實施。隨相關(guān)應(yīng)用發(fā)展,在規(guī)模和復(fù)雜度具備獨立提供服務(wù)條件,則申請通過架構(gòu)評審獨立遷出相應(yīng)服務(wù)能力。
- 平臺子服務(wù)解耦原則:存在提供基于主數(shù)據(jù)的非整合性質(zhì)服務(wù)接口和其它服務(wù)能力,該類應(yīng)用將采用微服務(wù)模式作為平臺子服務(wù),計算和數(shù)據(jù)庫資源同平臺整合服務(wù)獨立解耦。子服務(wù)仍依賴企業(yè)服務(wù)整合平臺統(tǒng)一對外發(fā)布接口。
六、集中交換體系交易整合遷移策略思考
目前G行集中交換體系交易整合場景隨著前后臺系統(tǒng)服務(wù)化,將逐步遷移至分布式服務(wù)體系。針對不同業(yè)務(wù)場景情況,其遷移策略分為以下幾類:
1.直接孵化領(lǐng)域整合平臺:已具備成熟領(lǐng)域能力,可直接形成新的專業(yè)領(lǐng)域整合平臺服務(wù)。服務(wù)調(diào)用方已在分布式服務(wù)體系內(nèi)的領(lǐng)域整合場景,可參考企業(yè)服務(wù)整合平臺技術(shù)架構(gòu),進行遷移構(gòu)建。
2、遷移至企業(yè)服務(wù)整合平臺:未成熟領(lǐng)域整合場景遷入企業(yè)服務(wù)整合平臺。如服務(wù)調(diào)用方已在分布式服務(wù)體系內(nèi),可遷移相關(guān)場景,支持體系內(nèi)應(yīng)用。
3.獨立演進成為獨立應(yīng)用服務(wù):具備獨立業(yè)務(wù)特征的應(yīng)用應(yīng)獨立發(fā)布企業(yè)級服務(wù)。隨著服務(wù)化展開,服務(wù)調(diào)用方已在分布式服務(wù)體系內(nèi),具備可形成獨立應(yīng)用服務(wù),包括業(yè)務(wù)主數(shù)據(jù)的應(yīng)用,建議獨立發(fā)布服務(wù)或應(yīng)用子服務(wù)。
七、總結(jié)與展望
企業(yè)服務(wù)整合平臺作為服務(wù)整合技術(shù)支撐類平臺,目前已投入生產(chǎn)運行半年之久,取得了一定的效果,全鏈路自動化的處理流程大大縮短了業(yè)務(wù)場景處理時間。同時我們對整合平臺的未來進行了規(guī)劃與思考,尤其是在業(yè)務(wù)場景的規(guī)劃與設(shè)計方面。平臺將不斷豐富業(yè)務(wù)場景整合,擴展業(yè)務(wù)范圍,編排更復(fù)雜的業(yè)務(wù)場景。同時平臺將做好業(yè)務(wù)場景間的解耦,充分用好容器云資源和微服務(wù)架構(gòu)優(yōu)勢將業(yè)務(wù)場景更加細粒度化,充分保障各業(yè)務(wù)場景平穩(wěn)運行,使其在G行分布式架構(gòu)轉(zhuǎn)型中發(fā)揮更大的作用。