(貴州中科恒運(yùn)軟件科技有限公司 貴州 貴陽 550000)
前言:正如同字面理解一樣,所謂的微服務(wù)就是微小服務(wù),是指在系統(tǒng)中用戶可以感覺到的工作單元,且每一個(gè)工作單元都是獨(dú)立的。事實(shí)上微服務(wù)系統(tǒng)它是一種軟件的架構(gòu),能夠?qū)⒃緩?fù)雜的服務(wù)流程分解成多個(gè)獨(dú)立的子單元用于解決問題,根據(jù)用戶的需要擴(kuò)展功能。軟件工程與微服務(wù)系統(tǒng)二者密切關(guān)聯(lián),軟件工程起源自上個(gè)世紀(jì)的六十年代末,彼時(shí)就已經(jīng)出現(xiàn)了相對完善的語言、方法以及理論。不過因?yàn)檐浖嬖趶?fù)雜性、不穩(wěn)定性、不可見性的特性,因此需要系統(tǒng)來實(shí)現(xiàn)系統(tǒng)設(shè)計(jì)與系統(tǒng)需求的交接和過度,也正是這一事件軟件結(jié)構(gòu)才開始出現(xiàn)。每一個(gè)單元都是一個(gè)獨(dú)立的單位負(fù)責(zé)各自對應(yīng)的任務(wù),既能夠通過系統(tǒng)來互相交流,也可以單獨(dú)擴(kuò)展。
網(wǎng)絡(luò)軟件依靠著微服務(wù)系統(tǒng)表達(dá)與展現(xiàn),能夠達(dá)到網(wǎng)絡(luò)資源共享與集成的目的,與計(jì)算機(jī)網(wǎng)絡(luò)特征相符合。不過在動態(tài)、協(xié)同以及異構(gòu)網(wǎng)絡(luò)中卻存在各種各樣不同的問題,嚴(yán)重的影響了微服務(wù)系統(tǒng)的網(wǎng)絡(luò)服務(wù)能力與可靠性。為了解決上述問題,保障系統(tǒng)可靠性,就必須積極引用自適用概念[1]。當(dāng)網(wǎng)絡(luò)超脫出軟件的控制范疇,那么自適應(yīng)系統(tǒng)就必須發(fā)揮其作用,以高效、迅速的方式解決異常。簡單來說就是通過依賴關(guān)系、動態(tài)數(shù)據(jù)、統(tǒng)計(jì)方法以及數(shù)學(xué)模型做預(yù)測評估與綜合計(jì)算,實(shí)現(xiàn)可靠性控制的目的。
以太網(wǎng)包括大粒度服務(wù)與小粒度服務(wù),每一個(gè)小粒度服務(wù)都是實(shí)現(xiàn)描述單個(gè)服務(wù)模型規(guī)則約定的重要的單位,而大粒度服務(wù)則是實(shí)現(xiàn)描述多個(gè)服務(wù)模型規(guī)則約定的重要單位。互聯(lián)網(wǎng)的服務(wù)流程目標(biāo)為達(dá)到性能最優(yōu)化、可靠性最佳化。同粒度服務(wù)中小粒度服務(wù)的組合非常容易實(shí)現(xiàn)[2]。大粒度服務(wù)借助于最優(yōu)化服務(wù)流程同樣也可以額解決上述問題。優(yōu)化粒度的服務(wù)流程是NPC問題,有著非常復(fù)雜的求解過程[3]。多年的研究與發(fā)展誕生了許多的服務(wù)組合方案,不過這些方案的條件都是建立在同類型小粒度服務(wù)的。大家在看問題時(shí)往往會以不同的角度去分析與觀察,所以我們所獲得的答案有時(shí)會與小粒度服務(wù)結(jié)果不同。此時(shí)就必須依靠大粒度服務(wù)去解決問題。因?yàn)榇罅6确?wù)能夠解決多模組問題,降低溝通成本以及服務(wù)集數(shù)量,避免與忽視技術(shù)差別帶來的影響。利用云計(jì)算技術(shù)與啟發(fā)式求解能夠獲得最優(yōu)的大粒度服務(wù)模型參考定義。
微服務(wù)能夠?qū)⒃镜膯误w架構(gòu)組件分成無數(shù)獨(dú)立的結(jié)構(gòu)組件,因?yàn)槌霈F(xiàn)了大量組件,且每一個(gè)組件與其他組間都有著比較復(fù)雜的關(guān)系,人們必須要保持較高的軟件頻率,所以在一定程度上加大了故障診斷難度以及故障發(fā)生概率。因?yàn)榻M件與組件的關(guān)系十分的密切。當(dāng)某一組件出現(xiàn)了問題以后,其他的服務(wù)組間都會受到影響,呈現(xiàn)泛洪問題,致使系統(tǒng)服務(wù)能力下降。所以科學(xué)、有效的診斷方法以及出錯原由定位都是需要慎重考慮的問題。事實(shí)上破壞系統(tǒng)功能結(jié)構(gòu),降低系統(tǒng)服務(wù)水平的要素有很多,而傳統(tǒng)人工報(bào)警方式并不能適應(yīng)組件互相依賴的關(guān)系。為了解決這一情況,提出了一種利用監(jiān)督測量執(zhí)行軌跡的診斷方法。結(jié)合樹型結(jié)構(gòu)的方式計(jì)算差異數(shù)值。根據(jù)異常數(shù)值即所謂的差異值去分析,就可以獲得明確的最終答案。
在微服務(wù)系統(tǒng)中,現(xiàn)有三個(gè)問題需要解決,只要能夠解決這三個(gè)主要問題,那么服務(wù)系統(tǒng)就可以說算是達(dá)成了服務(wù)目標(biāo)。
第一個(gè)問題,最初用于單體架構(gòu)實(shí)例部署可靠性的分析方式與微服務(wù)系統(tǒng)的功能并不匹配,這所帶來的影響比較突兀,嚴(yán)重影響了微服務(wù)系統(tǒng)服務(wù)水平。同時(shí)也破壞了微服務(wù)系統(tǒng)可靠性能力。
第二個(gè)問題,受科技與實(shí)例經(jīng)驗(yàn)積累的影響,如今的微服務(wù)系統(tǒng)獲得了空前的發(fā)展。傳統(tǒng)單一服務(wù)流程可靠性分析,早已無法再滿足網(wǎng)絡(luò)控制的需求。因此多業(yè)務(wù)交流預(yù)估服務(wù)同樣也會是解決與突破系統(tǒng)可靠性阻礙的重要因素,是亟待解決的重要問題。
第三個(gè)問題,為了達(dá)成自適應(yīng)目標(biāo),重組系統(tǒng)服務(wù)流程十分的重要。根據(jù)大粒度服務(wù)的候選集合與服務(wù)流程的模型來建立可行的基礎(chǔ)服務(wù)流程是非常重要的一步??墒歉鶕?jù)現(xiàn)狀來看,短時(shí)間找出與解決該問題并不容易,服務(wù)流程的重組不僅意義重大,同時(shí)也困難重重。
結(jié)語:今后的微服務(wù)系統(tǒng)必將獲得更全面的發(fā)展與覆蓋空間,滲透到我們生活的各個(gè)方面,我們既要認(rèn)識與明確微服務(wù)系統(tǒng)的價(jià)值與作用,同時(shí)也要了解微服務(wù)系統(tǒng)存在的一些瑕疵,投入更多的技術(shù)研發(fā)時(shí)間與強(qiáng)度,克服系統(tǒng)組合、故障診斷、可靠性差等問題,早日將困擾微服務(wù)系統(tǒng)的困難打破,完善其服務(wù)體系與架構(gòu),實(shí)現(xiàn)理想化微服務(wù)系統(tǒng)建設(shè)目標(biāo),借助于本文的探討完善微服務(wù)系統(tǒng)。