毛正雄 楊震乾 薛永軍
摘要:隨著信息通信技術(shù)推動智能電網(wǎng)創(chuàng)新發(fā)展工作的開展,電力云平臺的建設(shè)舉足輕重,并在業(yè)務(wù)集成、數(shù)據(jù)共享等方面取得了突破性進展,然而業(yè)務(wù)功能的迅速增加及系統(tǒng)規(guī)模的膨脹給電力云建設(shè)帶來了新的挑戰(zhàn)。文章分析了電力企業(yè)實時通信服務(wù)架構(gòu)及微服務(wù)的內(nèi)涵,并對微服務(wù)下電力實時通信服務(wù)平臺的結(jié)構(gòu)、優(yōu)化路徑和具體設(shè)計展開分析。
【關(guān)鍵詞】微服務(wù) 電力企業(yè) 實時通信服務(wù) 服務(wù)架構(gòu)
1 引言
目前,隨著智能電網(wǎng)的快速發(fā)展,全球能源互聯(lián)網(wǎng)建設(shè)工作的不斷推進,電力企業(yè)實時通信發(fā)展勢頭迅猛,使得電力系統(tǒng)及平臺建設(shè)規(guī)模不斷擴大,功能不斷增多,性能不斷提高。與此同時,電力實時通信服務(wù)平臺也產(chǎn)生出一些問題:
(1)單體應(yīng)用更加繁雜,因此維護、升級更新的難度加大;
(2)不能獨立更新應(yīng)用的某一部分,需要對整個應(yīng)用進行重新部署;
(3)系統(tǒng)功能因業(yè)務(wù)管理方式不同、邊界模糊、效率低下等問題導(dǎo)致重建。
因此,需要在分布式架構(gòu)、模塊化開發(fā)的戰(zhàn)略基礎(chǔ)上尋找一種模式來搭建好電力云平臺。就目前而言,微服務(wù)架構(gòu)是一種理想的方案。
2 電力企業(yè)實時通信服務(wù)架構(gòu)及微服務(wù)內(nèi)涵
2.1 電力企業(yè)實時通信服務(wù)架構(gòu)
2.1.1 傳輸協(xié)議
具體來說,目前較為成熟的網(wǎng)絡(luò)技術(shù)是ISO(國際標準化組織)-OSI(開放系統(tǒng)互連)參考模型,基本上使實時動態(tài)監(jiān)測系統(tǒng)實時通信的需求得到滿足。在參考模型ISO-OSI中,至關(guān)重要的一層是傳輸層,是從源端口到目的端口控制數(shù)據(jù)傳輸由低至高的最后一層,也是唯一承擔(dān)控制總體數(shù)據(jù)的一層。
概括分析,TCP(傳輸控制協(xié)議)、UDP(用戶數(shù)據(jù)包協(xié)議)、SPX(序列分組交換協(xié)議)、DCCP(數(shù)據(jù)擁塞控制協(xié)議)、SCTP(流控制傳輸協(xié)議)等是構(gòu)建電網(wǎng)實時數(shù)據(jù)服務(wù)平臺的主要傳輸層協(xié)議。針對以上各協(xié)議,表1在時效性、可靠性和安全性方面進行簡要歸納:
從設(shè)計思想與實際運用來探究,SCTP剛開始是用于IP上的傳輸電話協(xié)議,適宜運用于電信網(wǎng)絡(luò);SPX則較適合運用于Novell(諾勒)網(wǎng)絡(luò),局限于小范圍;至于TCP,廣泛運用于各類TC P/IP網(wǎng)絡(luò),可知其兼容性、可擴展性會比較強,這對于電網(wǎng)信息系統(tǒng)的長期持續(xù)發(fā)展、兼容擴展來說是非常有利的。由此可見,TCP協(xié)議在安全可靠性、兼容通用性、可擴展性方面具有較大優(yōu)勢,所以比較適宜運用于電網(wǎng)實時數(shù)據(jù)服務(wù)平臺。
2.1.2 網(wǎng)絡(luò)結(jié)構(gòu)
一般來說,Client/Server(客戶,服務(wù))模式和Browser/Server(瀏覽器/服務(wù)器)模式是實際運用中較為典型的網(wǎng)絡(luò)結(jié)構(gòu)。通過對兩者進行分析,可知Client/Server結(jié)構(gòu)的優(yōu)勢是充分發(fā)揮PC客戶端的處理能力,在客戶端處理好工作后再提交給服務(wù)器,客戶端響應(yīng)速度快、服務(wù)器負荷輕。與此同時,Client/Server結(jié)構(gòu)也會出現(xiàn)一些弊端,比較突出的有兩點:
(1)升級較為困難;
(2)客戶端直接訪問數(shù)據(jù)庫。
所以Client/Server通常用于范圍小的、特定的網(wǎng)絡(luò)環(huán)境,以局域網(wǎng)為基礎(chǔ),通過特定的服務(wù)器傳輸及交換數(shù)據(jù)。但也正因如此,Client/Server用戶群比較穩(wěn)定,能有效把控信息安全,通常適用于高度機密的信息系統(tǒng)。
相比較而言,Browser/Server結(jié)構(gòu)的最大優(yōu)勢就是無需安裝任何專用軟件就可在任意地點進行操作,只需一臺聯(lián)網(wǎng)計算機即可使用,客戶端在安裝、維護和升級方面成本低,且系統(tǒng)擴展簡易。Browser/Server無需專門的網(wǎng)絡(luò)硬件設(shè)施,是建立在廣域網(wǎng)之上的,與Client/Server相比,適用范圍更廣,通常只需要有操作系統(tǒng)與瀏覽器。同時,也正因Browser/Serve建立在廣域網(wǎng)之上,可能面對的是未知的用戶,Browser/Serve存在著安全可控性相對較弱、服務(wù)器運行數(shù)據(jù)量大的弊端。因相關(guān)軟件只在服務(wù)器端上安裝,網(wǎng)絡(luò)管理者只需管理服務(wù)器,所有的客戶端只有瀏覽器,在服務(wù)器端上,是通過瀏覽器平臺來實現(xiàn)用戶界面,極少在網(wǎng)站前臺實現(xiàn),網(wǎng)絡(luò)管理者只需維護好硬件設(shè)施。但是,若應(yīng)用服務(wù)器運行數(shù)據(jù)量過大,服務(wù)器會出現(xiàn)“癱瘓”問題甚至引起嚴重后果。表2中是對Client/Server模式與Browser/Serve模式的優(yōu)缺點進行比較:
概括分析,Client/Server模式更加適用于電網(wǎng)實時數(shù)據(jù)服務(wù)平臺。
2.2 微服務(wù)的內(nèi)涵
微服務(wù)架構(gòu)最開始是國外知名互聯(lián)網(wǎng)公司(亞馬遜、億貝、Nefflix等)從實踐中逐漸摸索出來,用來處理復(fù)雜的應(yīng)用系統(tǒng)架構(gòu),即以相互獨立的業(yè)務(wù)單元形式將其分解成多個服務(wù),并通過合適的技術(shù)圍繞指定業(yè)務(wù)來實現(xiàn)。在服務(wù)獨立運行過程中,形成高內(nèi)聚自治單元,邊界分明,通過輕量級通信機制的交流配合來實現(xiàn)完整運用。
微服務(wù)架構(gòu)有著SOA(面向服務(wù)的架構(gòu))的特點,但與其也有所區(qū)別。SOA是在ESB(企業(yè)服務(wù)總線)基礎(chǔ)上進行操作的模式。其主要表現(xiàn)在服務(wù)松散、獨立性強、自治性強,相對于傳統(tǒng)ESB開發(fā)程度簡單,其具有靈活性、易實施性及可擴展性的特點。伴隨著互聯(lián)網(wǎng)高速發(fā)展,在快捷開發(fā)、持續(xù)交付、虛擬化技術(shù)與DevOps文化等理念快速興起的推動下形成了微服務(wù)架構(gòu)理念。在微服務(wù)架構(gòu)規(guī)劃的基礎(chǔ)上,企業(yè)移動辦公平臺可將傳統(tǒng)PC端復(fù)雜的應(yīng)用系統(tǒng)分解成功能不同的微服務(wù)接口而不干擾現(xiàn)有業(yè)務(wù)的運行,快速重構(gòu)適用在耦合度低、擴展性強、調(diào)節(jié)性好的移動端應(yīng)用系統(tǒng),在平臺建設(shè)上往往是通過局部新增、更改等來演進系統(tǒng)。而從客觀上看,微服務(wù)架構(gòu)服務(wù)間的變化周期是不同步的,在升級部署時,只需對局部落后的組件進行更新,同時,在架構(gòu)屬性上也呈現(xiàn)出漸進式演進規(guī)律的特點。
3 微服務(wù)下電力實時通信服務(wù)平臺的結(jié)構(gòu)
基礎(chǔ)設(shè)施服務(wù)、平臺服務(wù)以及云服務(wù)中心三個部分共同組成了微服務(wù)下電力實時通信服務(wù)平臺?;A(chǔ)設(shè)施和平臺服務(wù)兩層聯(lián)系緊密,云服務(wù)中心服務(wù)總線呈現(xiàn)出分布式結(jié)構(gòu),一鍵化部署,全鏈路監(jiān)控。電力實時通信和云服務(wù)平臺總體結(jié)構(gòu)如圖1所示。
3.1 平臺服務(wù)層
平臺服務(wù)層包含平臺組件及應(yīng)用管理的服務(wù)。組件服務(wù)包括統(tǒng)一權(quán)限與流程、數(shù)據(jù)傳輸、應(yīng)用中問件、集中式與分布式數(shù)據(jù)庫、大數(shù)據(jù)平臺、ETL等。應(yīng)用管理服務(wù)是針對電力云平臺承載的應(yīng)用進行管理,有著彈性收縮、故障自愈、自動化部署及全鏈路監(jiān)控等功能。首先,平臺中的各組件依據(jù)自身特性,實現(xiàn)不同層次的服務(wù),并向云服務(wù)中心相關(guān)接口提供多種服務(wù);其次,云服務(wù)中心調(diào)用接口統(tǒng)一對外提供多種服務(wù),并支持服務(wù)與業(yè)務(wù)綁定。
3.2 基礎(chǔ)設(shè)施服務(wù)層
基礎(chǔ)設(shè)施服務(wù)層提供計算、存儲、負載均衡等服務(wù)。其中,云資源管理及云操作系統(tǒng)給計算服務(wù)提供接口,由云服務(wù)中心進行整合,提供虛擬機、容器等計算服務(wù):儲存服務(wù)的接口提供也與計算服務(wù)類似,最終對外提供集中式及分布式存儲服務(wù):負載均衡服務(wù)由負載均衡器提供接口,通過云服務(wù)中心結(jié)合后進行監(jiān)控、部署,對各組件及全局的應(yīng)用訪問路由進行自動配置。
3.3 電力實時通信服務(wù)中心
電力實時通信服務(wù)中心包括云控制臺、部署配置和監(jiān)控調(diào)度。其中,云控制臺是整個結(jié)構(gòu)的門戶,是外界使用平臺服務(wù)的唯一入口,也是對外服務(wù)的統(tǒng)一出口:部署配置基于虛擬機和容器部署,為應(yīng)用和電力平臺各組件運行環(huán)境提供編排功能,支持服務(wù)性及動態(tài)部署;監(jiān)控調(diào)度通過收集全鏈路監(jiān)控數(shù)據(jù),根據(jù)假設(shè)的調(diào)度方略,提供由下至上的彈性調(diào)度能力。
4 微服務(wù)下電力實時通信服務(wù)平臺的優(yōu)化
從現(xiàn)有情況來看,實時通信服務(wù)平臺主要有3種缺陷:首先,各個相關(guān)組件缺乏相同的頁而設(shè)計、服務(wù)標準規(guī)格不一、服務(wù)實施端口操作繁雜:其次,各個相關(guān)組件服務(wù)的實施、組成、選調(diào)的方法區(qū)別過大;再次,各種類型的軟件和組件在進行計劃、調(diào)配、監(jiān)督時都要按照各自方式進行處理。根據(jù)以上問題,本文超越固有的設(shè)計觀點,針對電力實時通訊服務(wù)平臺框架開展微服務(wù),把電力應(yīng)用實施中繁復(fù)的經(jīng)營領(lǐng)域分為幾個微服務(wù),使其粒度進一步細化、耦合度進一步降低,而且重復(fù)使用率進一步提高。關(guān)于在電力云內(nèi)增設(shè)的電力軟件,當然也應(yīng)當從微服務(wù)建設(shè)角度設(shè)計軟件的經(jīng)營活動思維規(guī)劃與實施的可行性。微服務(wù)框架建設(shè)應(yīng)當注意思考下而幾個問題:
4.1 建立統(tǒng)一的服務(wù)問通信機制
從運行進程上來說,微服務(wù)之問是各自獨立的,應(yīng)當設(shè)計一致的運行程序問交流方式以達到交互的目的,建立各個微服務(wù)的聯(lián)系。運行程序問交流方式的設(shè)計要特別注意考慮如下幾點:
4.1.1 使用規(guī)范的服務(wù)標識
其作為一個相關(guān)服務(wù)的API規(guī)定獨一無二的表述性標識,這個時候要確保它具有兼容的特性,同時還要思考一個交流服務(wù)的各個版式、各個狀態(tài)相應(yīng)的同時存在多種實際情境時要怎樣展開表述。
4.1.2 交流服務(wù)齊發(fā)監(jiān)控措施
在客戶端口進行一次請示,這時也許會同時得到若干個交流服務(wù)實際情境的回應(yīng),在這樣的情況下應(yīng)當制定交流服務(wù)之問的齊發(fā)措施,同時監(jiān)督和管理多個實際例子。
4.1.3 處理局部功效失靈
交流服務(wù)選調(diào)時可能存在服務(wù)交流內(nèi)部問題、網(wǎng)絡(luò)問題、選調(diào)超時等突發(fā)情境,從而出現(xiàn)選調(diào)障礙、現(xiàn)在占有數(shù)據(jù)得不到擴散等情況。關(guān)于上而的各種情境要使用對應(yīng)的措施,通常有超時重新嘗試、熔斷限制流量等措施。
4.1.4 同步請示回應(yīng)模型
在第一次請示發(fā)出之后,客戶端口程序的實施受阻不暢,到接收服務(wù)交流端口的響應(yīng)數(shù)據(jù)。比如http的RESTful、在XML和SOAP(非抽象對象訪問規(guī)定)基礎(chǔ)上的WebService、RPC(在程序化和反程序化規(guī)定基礎(chǔ)上的遠距離選調(diào))等等。
4.1.5 非同步數(shù)據(jù)交流模型
客戶端口第一次請示出來后,根據(jù)自己的項目活動方式持續(xù)實施,不需要服務(wù)交流端口的回應(yīng),當服務(wù)交流端口實施了回應(yīng),服務(wù)交流客戶端口以回調(diào)的辦法自己解決。比如AMQP的Rabbit MQ以及Apache的ActiveMQ等等。
4.1.6 對交流服務(wù)實施成果進行緩存
在某種意義上,經(jīng)過對實施成果的緩存能夠使組織結(jié)構(gòu)性進一步鞏固,特別是多次選調(diào)的交流服務(wù),能夠很快得到運算數(shù)據(jù),因此緩存交流服務(wù)是非常關(guān)鍵的。
4.2 服務(wù)注冊與發(fā)現(xiàn)機制
在電力即使交流服務(wù)通信平臺中,服務(wù)交流登記與發(fā)展程序給各種交流服務(wù)展開定位提供了方便,為確保各個交流的有效性,需要設(shè)計一個隨時翻新的、實效性較高的服務(wù)交流登記與發(fā)展樞紐。服務(wù)交流登記有自登記和被登記兩個方而,當中,自登記屬于服務(wù)交流實際情境主動登記到服務(wù)登記與發(fā)展樞紐,并使用心跳顯示策略決定登記數(shù)據(jù)的合理可行性。被登記不同于自登記,是指服務(wù)登記與發(fā)展樞紐自主去尋找新的交流實際例子,比如:經(jīng)過數(shù)據(jù)計劃或服務(wù)信息例子情境征訂,從而開展服務(wù)定位。
服務(wù)交流尋找包括服務(wù)選調(diào)方探究和分配交流服務(wù)尋找到兩種不同情境。服務(wù)交流信息選調(diào)方發(fā)現(xiàn)指的是在服務(wù)交流信息請示者根據(jù)規(guī)定的方案選用某一交流信息服務(wù)的幾個實際情境同時給出請示;分配層信息交流服務(wù)尋找指的是服務(wù)數(shù)據(jù)請示者給分配層發(fā)出請示,通過分配層尋找服務(wù)登記與發(fā)展樞紐,并根據(jù)分配路由措施來對服務(wù)實例進行定位。
4.3 服務(wù)可持續(xù)交付
服務(wù)信息可持久交流是指在電力即時通信服務(wù)信息提供平臺當中,各個微服務(wù)可以持久根據(jù)規(guī)定化程序展開交付,也可解釋為某個電力應(yīng)用軟件根據(jù)微服務(wù)框架觀點在設(shè)計、規(guī)劃實施及維修進程中擁有可持久性,同時按照各個樣板及實施過程,各個微服務(wù)在展開時也許擁有很多的情境,電力即時數(shù)據(jù)交流通信平臺應(yīng)該對其展開統(tǒng)一的監(jiān)督,并保障具有實效性的實施情境,從而使得各個數(shù)據(jù)服務(wù)信息例子可擁有安全平穩(wěn)性的服務(wù)。服務(wù)可持久交流保障了微服務(wù)框架的有效展開。
5 基于微服務(wù)架構(gòu)的電力實時通信平臺設(shè)計
建設(shè)在微服務(wù)數(shù)據(jù)基礎(chǔ)上的電力即時信息交流通信平臺第一應(yīng)當把復(fù)雜的項目抽象為更細的因子展開持續(xù)使用的服務(wù),并根據(jù)項目功能把各個微服務(wù)信息進行集合。在微服務(wù)框架基礎(chǔ)上的電力即時信息交流通信平臺框架如圖2。
在電力微服務(wù)軟件構(gòu)建發(fā)展形成后,經(jīng)過連續(xù)交付組件對其展開布置、檢驗,并交付到電力即時交流通信平臺中,另外在服務(wù)登記樞紐進行登記。服務(wù)請示者經(jīng)過平臺服務(wù)層中的平臺組件微服務(wù)提出請示,服務(wù)網(wǎng)絡(luò)關(guān)卡經(jīng)過固定的措施對請示數(shù)據(jù)展開阻礙和定位。電力即時信息交流數(shù)據(jù)中負責(zé)組織實施監(jiān)控的組塊也是該平臺內(nèi)的微服務(wù)。
5.1 持續(xù)交付組件
在電力即時交流通信服務(wù)平臺中,連續(xù)交付組件最重要的是把平臺上的各個電力軟件微服務(wù)展開自主化,連續(xù)、快捷地布置到實施情境中,另外將這些微服務(wù)進行編程,使其擁有維修方便、更新快捷,拓展迅速的性質(zhì)。
5.2 服務(wù)注冊中心
微服務(wù)框架中的關(guān)鍵組件是服務(wù)登記樞紐,在電力即時交流通信服務(wù)平臺中,在實施情境、默認程序發(fā)生變化之時,各種服務(wù)的實際例子也隨之產(chǎn)生改變??蛇B續(xù)交付組件實施若干個提供給其他交流服務(wù)或者外在軟件展開探訪的微服務(wù)實際情境,盡管服務(wù)登記樞紐電力即時交流通信服務(wù)平臺記載著各個實際情境的選調(diào)方式、通信規(guī)定等探訪數(shù)據(jù)。另外服務(wù)等級樞紐負責(zé)對各個實際例子實施時的實時數(shù)據(jù)展開監(jiān)督,并跟蹤其實施情況,同時按照其良好情況及網(wǎng)絡(luò)情境的不同展開相應(yīng)的變動。當客戶端口探訪服務(wù)登記樞紐的各個數(shù)據(jù)信息技術(shù)服務(wù)時,第一,向分配層發(fā)出請示,分配層服務(wù)等級樞紐展開調(diào)查并根據(jù)分配路由措施對服務(wù)數(shù)據(jù)實際情境展開定位。另外,分配層還應(yīng)該按照請示負載且處在活躍動態(tài)的服務(wù)數(shù)據(jù)實際情境數(shù)據(jù)來選用調(diào)配措施。更多的是關(guān)于各個微服務(wù)協(xié)議方案交流時怎樣定位和發(fā)展服務(wù)信息的情境。
5.3 服務(wù)網(wǎng)關(guān)
電力即時交流通信服務(wù)平臺的規(guī)范探訪端口是服務(wù)網(wǎng)絡(luò)關(guān)口,其封閉安裝了平臺內(nèi)在的一切服務(wù)數(shù)據(jù)。通常包含有下而的作用:
(1)在特定情境下,保證將電力即時交流通信服務(wù)平臺中的服務(wù)透露給外部選用;
(2)保證對請示的阻擋、預(yù)先解決、大小配對等:
(3)供給請示分配路由、協(xié)商轉(zhuǎn)化、安全保護、負載平衡等措施;
(4)供給實施成果緩存制度,在規(guī)定時問問隙內(nèi)的實施成果數(shù)據(jù)可實施緩存。
6 結(jié)論
文章經(jīng)過研究電力即時交流通信服務(wù)平臺已有框架的特性及缺陷,分析了微服務(wù)框架的建設(shè)觀點和有利條件,指出了電力即時交流通信服務(wù)框架的優(yōu)化措施,并且對微服務(wù)框架下電力云平臺的核心組件展開了深層次的探討。經(jīng)過將微服務(wù)框架運用到電力即時交流通信服務(wù)平臺的建設(shè),成功化解了電力即時交流通信服務(wù)平臺固有的規(guī)格不一、構(gòu)架繁雜等缺陷,達到了平臺中各種服務(wù)信息的低耦合、可伸展、容易拓展的目的,方便了平臺的優(yōu)化和維護。
參考文獻
[1]王磊.微服務(wù)架構(gòu)與實踐[M].北京:電子工業(yè)出版社,2015.
[2]鐘清,智能電網(wǎng)關(guān)鍵技術(shù)研究[M],北京:中國電力出版社,2011
[3]徐毅.面向智能電網(wǎng)的通信中間件的關(guān)鍵技術(shù)研究[J],中國新技術(shù)新產(chǎn)品.2016 (01):26-26.
[4]譚文恕,傳輸協(xié)議現(xiàn)狀及國內(nèi)外相關(guān)標準[J].電力設(shè)備,2004,5(07):11-14.