• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      關(guān)于民航領(lǐng)域集成系統(tǒng)可持續(xù)迭代的架構(gòu)設(shè)想

      2019-06-27 00:09:09邵黎明
      科技創(chuàng)新與應(yīng)用 2019年9期
      關(guān)鍵詞:微服務(wù)去中心化

      邵黎明

      摘? 要:長期擴展性系統(tǒng)具有獨立模塊成型快、系統(tǒng)發(fā)展時間長、模塊迭代頻繁的特點。因此將獨立模塊服務(wù)化、采用可插拔的服務(wù)注冊機制并通過完善的權(quán)限控制和認證實現(xiàn)新舊服務(wù)之間的通訊,進而在提高數(shù)據(jù)和服務(wù)的復(fù)用性避免重復(fù)開發(fā)的同時保證了每個獨立服務(wù)的高可用性。分布式系統(tǒng)的CAP理論要求在架構(gòu)的設(shè)計前期對CP和AP作出抉擇,而由于民航的領(lǐng)域特性,對于高可用和分區(qū)容錯性的要求遠大于一切,因此以AP為原則的去中心化設(shè)計成為首選。

      關(guān)鍵詞:服務(wù)注冊;微服務(wù);高可用;去中心化;民航領(lǐng)域

      中圖分類號:TP302? ? ? ? 文獻標志碼:A? ? ? ? ?文章編號:2095-2945(2019)09-0069-02

      Abstract: The long-term extensibility system has the characteristics of fast independent module forming, long system development time and frequent module iteration. Therefore, the independent module is serviced, the pluggable service registration mechanism is adopted, and the communication between the old and the new services is realized through perfect authority control and authentication. In turn, it can improve the reusability of data and services to avoid repeated development while ensuring the high availability of each independent service. The CAP theory of distributed systems requires a choice between CP and AP in the early stage of architecture design, but because of the domain characteristics of civil aviation, the requirements for high availability and partition fault tolerance are far greater than anything else. Therefore, the decentralized design based on the principle of AP has become the first choice.

      Keywords: service registration; micro-service; high availability; decentralization; civil aviation field

      基于關(guān)系性數(shù)據(jù)庫開發(fā)的傳統(tǒng)單機應(yīng)用不存在分區(qū)所以不需要考慮分區(qū)容錯性、僅有一個可用服務(wù)、數(shù)據(jù)通過單個數(shù)據(jù)庫訪問具備強一致性。但是隨著業(yè)務(wù)的拓展,這種單機應(yīng)用將會越來越多,系統(tǒng)之間的相互通信一般采取接口方式,而接口的增加無疑會導(dǎo)致系統(tǒng)風(fēng)險的增加并且對各個不同系統(tǒng)和不同系統(tǒng)的接口維護將會異常困難,并且維護的工作量也是隨著系統(tǒng)的增加不斷的加大;如果把各個獨立系統(tǒng)集成為單個系統(tǒng)則需要考慮:(1)系統(tǒng)是

      否能承載各終端訪問壓力;(2)各個獨立應(yīng)用的開發(fā)時間

      是否可以在接近的時間內(nèi)完成;(3)當系統(tǒng)容量達到某個

      量級時,是否具備完善的監(jiān)控管理機制。

      1 基于微服務(wù)的民航基礎(chǔ)服務(wù)系統(tǒng)的研究

      本文介紹以大數(shù)據(jù)為依托的微服務(wù)架構(gòu)應(yīng)用,構(gòu)建高效、用戶體驗良好、抗壓能力強、能滿足用戶多元化需求的民航基礎(chǔ)服務(wù)系統(tǒng),并介紹對碎片化系統(tǒng)的整理方案。該方案在對微服務(wù)深入研究的基礎(chǔ)上運用其對服務(wù)的注冊與發(fā)現(xiàn)機制有效管理服務(wù)層的依賴關(guān)系并結(jié)合實際業(yè)務(wù)完成對服務(wù)的授權(quán)與鑒權(quán),方案包括數(shù)據(jù)呈量級增長時的處理辦法和對數(shù)據(jù)的有效利用。在滿足民航基礎(chǔ)服務(wù)系統(tǒng)向公網(wǎng)方向發(fā)展的安全、穩(wěn)定等必要條件下,實現(xiàn)了系統(tǒng)的可伸縮、多終端兼容。

      1.1 行業(yè)需求

      民航相關(guān)服務(wù)越來越多,服務(wù)的管理越來越困難,小服務(wù)資源的浪費等問題逐漸顯現(xiàn),此時行業(yè)迫切需要增加一個調(diào)度中心基于訪問壓力實時管理集群容量,整合應(yīng)用服務(wù),使系統(tǒng)之間互聯(lián)互通,提高資源的利用率。

      1.2 民航基礎(chǔ)服務(wù)系統(tǒng)建設(shè)方案

      微服務(wù)架構(gòu)對管轄內(nèi)的服務(wù)進行有效的治理是它有別于RPC或其他分布式系統(tǒng)架構(gòu)的關(guān)鍵特點,為適應(yīng)未來民航IT系統(tǒng)的不斷增長而建立基于微服務(wù)的民航基礎(chǔ)服務(wù)系統(tǒng)。

      系統(tǒng)設(shè)計方面以微服務(wù)的“去中心化”為核心思想,按照業(yè)務(wù)對系統(tǒng)進行分類管理,根據(jù)依賴關(guān)系對服務(wù)分層下層應(yīng)用不允許逆向調(diào)用,嚴格把控數(shù)據(jù)流向。整個架構(gòu)分為基礎(chǔ)服務(wù)、接入服務(wù)、調(diào)用服務(wù)、業(yè)務(wù)系統(tǒng)、統(tǒng)一門戶、數(shù)據(jù)服務(wù)六個版塊,各個版塊之間統(tǒng)一采用rest風(fēng)格的http協(xié)議通信。

      (1)基礎(chǔ)服務(wù)包含服務(wù)的注冊“中心”和配置“中心”,注冊服務(wù)通過將自身注冊到其他的注冊服務(wù)上創(chuàng)建副本去中心化,配置服務(wù)通過自我復(fù)制創(chuàng)建副本集去中心化,同時將自身注冊到注冊服務(wù)的副本集為其他各部提供啟動時的配置;可以由運維人員切換生產(chǎn)環(huán)境和開發(fā)環(huán)境的配置,統(tǒng)一的環(huán)境配置使系統(tǒng)管理更加高效,開發(fā)人員也無需知曉具體的數(shù)據(jù)庫連接密碼等敏感信息。

      (2)接入服務(wù)負責(zé)對接入應(yīng)用的鑒權(quán)與授權(quán)以及通過配置中心的相關(guān)配置限制接入應(yīng)用的調(diào)用頻次以保障被調(diào)用服務(wù)的安全。權(quán)限控制可以采用完美契合rest無狀態(tài)特性的OAuth2和JWT的組合方案,在應(yīng)用申請接入時可在后臺配置一個Token來控制當前接入應(yīng)用的訪問權(quán)限、時效和訪問頻次;當前應(yīng)用在調(diào)用其他服務(wù)時攜帶自己的Token,同時也要擁有解析允許訪問本應(yīng)用Token的能力。服務(wù)網(wǎng)關(guān)在Nginx+Lua和spring cloud的Zuul中選擇后者,因為Nginx雖然以單線程多路復(fù)用提供了比Zuul更加高效的服務(wù)但是Zuul擁有Spring生態(tài)的支持,開發(fā)和維護都更加方便。

      (3)負載均衡和容錯保護是提高系統(tǒng)可用性的措施之一,負載均衡也可以使用Nginx和Lua來實現(xiàn),但同樣選用spring cloud中集成了負責(zé)負載均衡的Ribbon,同時Ribbon還帶來對非spring boot應(yīng)用的支持,作為一個民航基礎(chǔ)系統(tǒng),應(yīng)該具備對其他rest風(fēng)格應(yīng)用的兼容特性以確保盡可能的接入如ASP.Net開發(fā)的應(yīng)用服務(wù)。容錯保護又包括服務(wù)熔斷和服務(wù)降級等措施,當系統(tǒng)協(xié)同運行過程中出現(xiàn)某個服務(wù)整體無法調(diào)用或響應(yīng)時間長的時候,為保障用戶能在可接受時間內(nèi)得到回饋需要對服務(wù)分情況的進行降級或熔斷;降級是將當前服務(wù)在路由節(jié)點中的位置向后推移,熔斷則是當超時或無法調(diào)用時路由到其他服務(wù)中。

      (4)數(shù)據(jù)服務(wù)提供緩存、關(guān)系型數(shù)據(jù)庫、分布式文件系統(tǒng)的支持,如果后期數(shù)據(jù)量確實很大,也有大數(shù)據(jù)計算的需求還可以加入Spark。緩存采用K-V內(nèi)存數(shù)據(jù)庫Redis提高數(shù)據(jù)層的并發(fā)處理能力;關(guān)系型數(shù)據(jù)庫可選擇開源的MySql配合應(yīng)用層數(shù)據(jù)分片框架Sharding-Jdbc做數(shù)據(jù)庫的讀寫分離、分庫分表集群,也可以選擇MyCat作為關(guān)系型數(shù)據(jù)庫中間件來提供分庫分表和讀寫分離的功能,前者的好處是不需要單獨維護一個數(shù)據(jù)庫中間件,也不用考慮中間件的可用性和并發(fā)處理能力,后者的好處是開發(fā)方無需關(guān)心數(shù)據(jù)庫存儲能力問題,兩種方案都解決了持續(xù)增長數(shù)據(jù)的存儲問題;分布式文件系統(tǒng)使用MongoDB,后續(xù)如果集成Spark則構(gòu)成一個完整的大數(shù)據(jù)解決方案。

      (5)業(yè)務(wù)系統(tǒng)是需要協(xié)同工作的服務(wù)的整合,各個應(yīng)用服務(wù)集群提供各自相對獨立的功能,同時也需要考慮響應(yīng)時間和運營維護的復(fù)雜程度。

      (6)統(tǒng)一門戶在微服務(wù)架構(gòu)中具有對業(yè)務(wù)應(yīng)用生命周期的支撐作用,當相對獨立的業(yè)務(wù)應(yīng)用越來越多時,這些微服務(wù)程序都將不再依賴應(yīng)用服務(wù)器,不依賴傳統(tǒng)應(yīng)用服務(wù)器則會導(dǎo)致應(yīng)用服務(wù)器提供管理控制臺無法正常工作,所以微服務(wù)的運行管理需要有統(tǒng)一的管理門戶。統(tǒng)一集中的微服務(wù)門戶,可以支撐應(yīng)用開發(fā)、業(yè)務(wù)處理、應(yīng)用管理、系統(tǒng)監(jiān)控等。

      1.3 民航基礎(chǔ)服務(wù)的接入方案

      根據(jù)不同的接入需求,基礎(chǔ)服務(wù)系統(tǒng)提供Server和Client兩種接入方案。

      (1)Server接入必須以Restful API的形式并符合微服務(wù)設(shè)計原則,必須歸入到基礎(chǔ)服務(wù)系統(tǒng)的服務(wù)治理體系中,服務(wù)的響應(yīng)時間必須在基礎(chǔ)服務(wù)方案規(guī)定的響應(yīng)時間范圍內(nèi)。Server接入方案開發(fā)方不需要考慮服務(wù)的治理問題,同時也能申請調(diào)用其他服務(wù),是一種高度定制化的接入方式。Server接入前須在門戶申請并登錄帳號,填寫接入應(yīng)用的類型為Server、用途、接入方、需要調(diào)用的服務(wù)等基本信息后提交接入申請,由系統(tǒng)管理員確認后發(fā)放測試環(huán)境的接入Token,上線前提交到系統(tǒng)進行測試,測試通過后由系統(tǒng)管理員發(fā)放生產(chǎn)環(huán)境Token上線該服務(wù)到申請人賬戶并自動開通當前賬戶的暫停服務(wù),刪除服務(wù)功能。

      (2)Client接入用于適配外部應(yīng)用,當舊系統(tǒng)的響應(yīng)越來越慢且當前基礎(chǔ)服務(wù)中已經(jīng)包含了部分可以被舊系統(tǒng)使用的功能時可以把這部分功能的提供方轉(zhuǎn)換為基礎(chǔ)服務(wù)。仍需在門戶登錄的狀態(tài)下申請接入,填寫接入應(yīng)用類型為Client、需要訂閱的消息、接收消息的地址、驗參公鑰等信息,提交申請后獲得對應(yīng)應(yīng)用的app key,系統(tǒng)管理員確認后當前app key擁有接入權(quán)限填入的接收消息地址將會實時收到訂閱的消息,消息的傳輸基于http協(xié)議,數(shù)據(jù)格式為json,同時為保障接入的客戶端數(shù)據(jù)安全,接收到消息時必須對參數(shù)進行簽名驗證。

      1.4 技術(shù)優(yōu)勢

      分布式系統(tǒng)是當用戶量攀升、數(shù)據(jù)量增大時的一種處理方法,基于微服務(wù)的民航基礎(chǔ)服務(wù)符合去中心化的設(shè)計規(guī)范并具備以下優(yōu)勢:

      (1)業(yè)務(wù)可伸縮。系統(tǒng)搭建完成后,可快速響應(yīng)行業(yè)內(nèi)多種需求,業(yè)務(wù)應(yīng)用開發(fā)完成后,系統(tǒng)管理員可通過門戶頁面快速發(fā)布,同時對業(yè)務(wù)應(yīng)用的升級與下線也是一鍵操作。

      (2)故障可隔離。在系統(tǒng)發(fā)生嚴重故障(例如某業(yè)務(wù)應(yīng)用的所有副本發(fā)生網(wǎng)絡(luò)故障)時,系統(tǒng)會自動啟用應(yīng)急措施將用戶請求路由到其他服務(wù)中,并產(chǎn)生警報信息。如果發(fā)生輕微故障(例如某業(yè)務(wù)應(yīng)用下的個別副本響應(yīng)時間長),系統(tǒng)會自動選擇響應(yīng)時間較短的服務(wù)來響應(yīng)用戶請求。

      (3)系統(tǒng)好管控。引入門戶對系統(tǒng)的業(yè)務(wù)應(yīng)用統(tǒng)一管控,可以有效的復(fù)用基礎(chǔ)應(yīng)用,從架構(gòu)上控制業(yè)務(wù)應(yīng)用之間的依賴關(guān)系,使業(yè)務(wù)應(yīng)用的開發(fā)和上線更為高效。

      2 結(jié)束語

      從單一的數(shù)據(jù)庫架構(gòu),到主從讀寫分離的數(shù)據(jù)庫架構(gòu),再到垂直拆分、水平拆分的數(shù)據(jù)庫架構(gòu),當民航領(lǐng)域垂直應(yīng)用越來越多,應(yīng)用之間交互不可避免,將核心業(yè)務(wù)抽取出來,作為獨立的服務(wù),逐漸形成穩(wěn)定的服務(wù)中心,使前端應(yīng)用能更快速地響應(yīng)多變的市場需求,使民航領(lǐng)域集成系統(tǒng)具備可持續(xù)迭代的能力,促進行業(yè)的發(fā)展。

      參考文獻:

      [1]黃志誠.數(shù)據(jù)中心建設(shè)中服務(wù)器虛擬化的應(yīng)用研究[J].科技資訊,2018.

      [2]汪文彬.高校數(shù)據(jù)中心服務(wù)器虛擬化研究及應(yīng)用[D].浙江工業(yè)大學(xué),2013:22-23.

      猜你喜歡
      微服務(wù)去中心化
      一種去中心化的網(wǎng)絡(luò)域名服務(wù)系統(tǒng)模型
      基于供給側(cè)改革理論的圖書館社交網(wǎng)絡(luò)微服務(wù)研究
      微信公眾平臺在醫(yī)院圖書館的應(yīng)用現(xiàn)狀調(diào)查
      基于微信企業(yè)號的校園移動服務(wù)
      微服務(wù)視角下高職圖書館數(shù)字資源使用分析
      中文信息(2016年10期)2016-12-12 10:09:57
      從單一模式系統(tǒng)架構(gòu)往微服務(wù)架構(gòu)遷移轉(zhuǎn)化技術(shù)研究
      淺析移動互聯(lián)語境下中小成本電影去中心化的創(chuàng)作趨向
      戲劇之家(2016年20期)2016-11-09 22:34:07
      “去中心化”電子商務(wù)背景下大學(xué)生網(wǎng)絡(luò)創(chuàng)業(yè)前景分析
      淺析新媒體視閾下的新聞失實報道
      商(2016年19期)2016-06-27 08:56:46
      基于微信公眾平臺的高校圖書館微服務(wù)現(xiàn)狀及對策
      涿鹿县| 林周县| 加查县| 通河县| 桦川县| 胶州市| 大理市| 裕民县| 曲水县| 汕尾市| 馆陶县| 富锦市| 林甸县| 花垣县| 永平县| 咸宁市| 张掖市| 保靖县| 曲靖市| 辽源市| 平定县| 沂水县| 平陆县| 黄梅县| 诏安县| 晴隆县| 德阳市| 互助| 大理市| 通化县| 正定县| 萝北县| 昭平县| 保德县| 繁峙县| 金溪县| 电白县| 井研县| 临高县| 舞阳县| 淮北市|