精品国产亚洲一区二区三区|亚洲国产精彩中文乱码AV|久久久久亚洲AV综合波多野结衣|漂亮少妇各种调教玩弄在线

<blockquote id="ixlwe"><option id="ixlwe"></option></blockquote>
  • <span id="ixlwe"></span>

  • <abbr id="ixlwe"></abbr>

    數(shù)字動能發(fā)布分布式智能代理xPort V1.0

    xPort V1.0 - 基于“Service Mesh”下一代分布式微服務框架

    繼發(fā)布面向量化金融的C++分布式xRPC通訊框架后,數(shù)字動能發(fā)布用于分布式服務框架的智能代理xPort v1.0。xPort智能代理完全由C++編寫,支持數(shù)字動能的xRPC通訊協(xié)議,主要用于實現(xiàn)多應用服務在分布式服務框架(如Service Mesh服務網(wǎng)格)的智能調(diào)度和管理功能。xPort v1.0智能代理的發(fā)布,標志著數(shù)字動能將掌握下一代分布式微服務架構-Service Mesh的核心開發(fā)技術。利用最新的分布式微服務架構,數(shù)字動能可具備搭建多元異構業(yè)務中臺、實現(xiàn)復雜業(yè)務解耦和跨業(yè)務間通訊、滿足多業(yè)務場景交付的能力。

    數(shù)字動能發(fā)布分布式智能代理xPort V1.0

    一、xPort是什么?

    智能代理,也叫Side Car,既是新一代分布式微服務框架-Service Mesh服務網(wǎng)格架構的基石構件,也是Service Mesh數(shù)據(jù)平面和控制平面的核心管理組件。

    數(shù)字動能發(fā)布分布式智能代理xPort V1.0

    ISTO的Service Mesh通用模型

    xPort是數(shù)字動能的Service Mesh核心組件“智能代理”(也叫Side Car)。xPort以分布式通訊框架xRPC為主要通訊協(xié)議,它主要負責Service Mesh服務網(wǎng)格節(jié)點間的數(shù)據(jù)平臺與控制平面的管理。服務網(wǎng)格-Service Mesh被視為下一代基于分布式思路的微服務架構,它提出了利用全新的分布式、輕量級設計的Sidecar(以下稱智能代理)部署模式替代原來龐大的層級式、堆疊式的集中服務框架。應用服務間的數(shù)據(jù)通訊將由智能代理接管,不再需要關注通信和控制細節(jié),信息可在服務網(wǎng)格間高速通訊。而對于系統(tǒng)級別的功能調(diào)用,應用服務單元也無需再去關心如何調(diào)度,完全由智能代理負責數(shù)據(jù)平臺和控制平面的協(xié)調(diào)。這種改進將把業(yè)務代碼和技術實現(xiàn)進一步解耦,技術架構的變動對業(yè)務代碼的影響也進一步減少。利用智能代理進行應用服務間信息通訊的方式是Service mesh服務網(wǎng)格設計的核心思路,數(shù)字動能提出的Direct Exchange Mesh服務網(wǎng)格架構對比ISTO經(jīng)典Service Mesh模型更輕量級,主要針對金融行業(yè)的大數(shù)據(jù)傳輸、復雜計算和高速傳輸需求進行了場景針對設計。其智能代理xPort完全自主研發(fā),采用大量創(chuàng)新設計。

    數(shù)字動能發(fā)布分布式智能代理xPort V1.0

    數(shù)字動能的Service Mesh 改進模型

    二、智能代理xPort v1.0有什么特點?

    1、智能代理通訊不再經(jīng)過通用模型的控制面板而是直接數(shù)據(jù)交換模式

    Service Mesh通用模型中,智能節(jié)點(Side Car)區(qū)分了數(shù)據(jù)平面和控制平面。但在面向應用服務,以松耦合和高速通訊為首要目標的Direct Exchange Mesh服務網(wǎng)格設計中,數(shù)字動能利用xPort智能代理大膽把控制平面的部分功能下沉至智能代理內(nèi)部,同時把硬件資源的調(diào)度權交回給IaaS層,讓整個分布式架構設計更輕量級,以智能節(jié)點直接點對點方式進行數(shù)據(jù)交換(Direct Exchange Model)。在原Service Mesh通用模型中,應用服務的微服務化看似松耦合,實際上由于控制面板的集中通訊設計,反而加重了網(wǎng)絡間節(jié)點傳輸?shù)膲毫?。?shù)字動能的xPort智能代理大膽取舍了原來控制面板的功能,改為智能代理間完全點對點直接通訊,從而避免過多的節(jié)點需要同時經(jīng)過控制平面通訊所產(chǎn)生的原生架構性能瓶頸。

    2、智能代理xPort允許應用(服務)通過進程內(nèi)調(diào)用的方式實現(xiàn)高速點對點通訊

    普通Service Mesh的SideCar只是做了消息轉(zhuǎn)發(fā),xPort在滿足該功能的前提下,可以更好的滿足金融業(yè)務(如投研業(yè)務)間大量數(shù)據(jù)和傳輸。智能代理xPort直接把應用服務加載到自身的進程內(nèi), 這樣應用服務和智能代理xPort的通訊無需再通過網(wǎng)絡避免了頻繁通訊產(chǎn)生的網(wǎng)絡高負載,而是直接通過內(nèi)存交互。如下圖,應用服務A和應用服務B都是加載在xPortA的,通訊流程為:應用服務A -> xPortA -> 應用服務B。即使兩個應用服務加載在不同的xPort,也只需要發(fā)起一次網(wǎng)絡調(diào)用即可。另外,不同于原來一對一的智能代理->應用服務的單一結(jié)構,xPort允許多個應用服務同時在進程內(nèi)加載。如圖,應用服務A,B,C可同時通過加載在xPortA中。

    數(shù)字動能發(fā)布分布式智能代理xPort V1.0

    利用xPort實現(xiàn)進程內(nèi)多應用服務調(diào)用

    3、智能代理xPort內(nèi)置服務發(fā)現(xiàn)功能,降低對注冊發(fā)現(xiàn)服務頻繁訪問的網(wǎng)絡消耗

    通用Service Mesh服務網(wǎng)格模型對服務注冊中心的依賴度很高,應用服務通過智能代理必須和服務注冊中心保持連接,以確保服務注冊中心能觀測到各個節(jié)點的狀態(tài)變化。這種方式在大規(guī)模的分布式應用中容易產(chǎn)生單點問題,隨著應用服務節(jié)點的數(shù)量增加,服務注冊中心的壓力會隨之變大,一旦服務注冊中心發(fā)生故障,所有的應用服務都將被掛起無法工作。xPort為避免此問題,在智能代理中內(nèi)置了服務發(fā)現(xiàn)功能。當應用服務把消息傳遞給xPort后,智能代理會先查詢內(nèi)置的本地路由表,查看是否有目標應用服務的地址,如果沒有才會從服務注冊中心獲取目標服務(應用)的地址。對于首次應用服務注冊,只需要通過智能代理向服務注冊中心做一次性注冊,后面的所有調(diào)用或應用服務目標的狀態(tài)無需再通過服務注冊中心。如上圖的服務(應用)A發(fā)送消息給應用服務D,當xPortA和xPortB通過服務注冊中心建立連接后, xPortA和xPortB會開始自動相互各自的應用服務信息,不再需要通過服務注冊中心。

    4、xPort具有帶消息隊列的點對點通訊功能

    在通用Service Mesh架構中,應用服務和智能代理、智能代理自身相互之間均是點對點通訊。點對點通訊在獲得高性能的同時,卻要求被調(diào)用方必須保持在線。在分布式場景中,應用服務可能會出現(xiàn)短時間(或極短時間)的通訊中斷現(xiàn)象。xPort智能代理將會允許這些臨時中斷現(xiàn)象的發(fā)生,并將其視為信息在節(jié)點間傳輸?shù)挠行芷?。xPort通過改進并融入ZeroMQ的技術達到此目的。應用服務把消息傳給xPort之后,會在本地創(chuàng)建該消息目標應用服務的隊列,然后再由該應用服務把消息發(fā)送給目標應用服務;如果目標應用服務不在線,那么在消息的生命周期內(nèi)會存放在這個隊列里面,待目標應用服務上線,該隊列會繼續(xù)完成消息傳輸。因此,智能代理間的消息傳輸只要在其生命周期內(nèi)被處理即可,并不要求各個智能代理節(jié)點必須立即響應。與原來傳統(tǒng)點對點的即時信息通訊方式不一樣,xPort在與應用服務和智能代理間的相互調(diào)用,并不認為只要對方不在線,消息傳輸就是失敗的,而是允許消息只要還在生命周期內(nèi),都可以隊列方式進入等待響應狀態(tài)。在點對點通訊效率提升方面,xPort同時借鑒了RabbitMQ一個連接可以創(chuàng)建多個通道(channel)的思路,大大減少了xPort之間的連接數(shù)量。xPort內(nèi)置的節(jié)點智能連接算法,可讓xPort智能代理會根據(jù)服務節(jié)點間線路情況自動增加連接,在空閑時自動降低連接數(shù)量。

    5、xPort同時支持多線程編程模型和Actor編程模型

    通用Service Mesh的架構中,智能代理(Side Car)只作為消息代理所用,xPort在實現(xiàn)消息代理功能的同時,允許應用服務加載到自身進程,使其具備對應用服務的調(diào)度功能。為滿足高并發(fā)的使用場景,xPort進一步提供了線程池和Actor兩種并發(fā)模型。線程池并發(fā)模型的多個線程間交互是通過共享內(nèi)存的方式進行的,多個線程對共享進行操作,達到同步消息的目的。這種方式極大提升響應速度,降低延時,但多線程編程模型難以保證應用運行的正確性。該問題需要用到鎖等機制來解決,這將會影響性能,并且容易導致死鎖等問題。因此,xPort同時提供了Actor并發(fā)模型。Actor不是通過共享內(nèi)存來通信,而是通過通信來共享內(nèi)存的。Actor的狀態(tài)由自身來進行維護,其他線程不能直接對Actor發(fā)起調(diào)用,而是要把調(diào)用的消息發(fā)送給Actor,由Actor來執(zhí)行操作,這樣就可以保證Actor內(nèi)部的數(shù)據(jù)只有由它自身進行改變。這種編程模型大大的降低多線程編程的復雜度,容易編寫出高并發(fā)的應用程序。xPort的使用對象可以根據(jù)業(yè)務選擇不同的編程模型即可。

    三、xPort可以解決什么問題?

    xPort作為數(shù)字動能分布式微服務框架DX Mesh的核心組件,主要解決各個應用服務間的數(shù)據(jù)、通訊和控制問題,為多業(yè)務場景設計,復雜系統(tǒng)構建和中臺業(yè)務架構方案提供了全新的實現(xiàn)思路。利用智能代理xPort實現(xiàn)的業(yè)務間互聯(lián)互通,將對大型業(yè)務系統(tǒng)構建和擁有復雜業(yè)務邏輯的核心系統(tǒng)研發(fā)帶來革命性的改變:

    1、業(yè)務架構簡單化 – 復雜業(yè)務結(jié)構通過xPort接入方式進行解耦,快速實現(xiàn)應用模塊化。

    2、以組織形態(tài)看待業(yè)務,而不是進行龐大臃腫的大架構設計。

    3、通過智能代理,業(yè)務間不再考慮統(tǒng)一設計,而是分立設計,甚至進行動態(tài)業(yè)務邏輯設計,彼此相互聯(lián)系又各自獨立。

    4、智能代理所形成的分布式業(yè)務群可實現(xiàn)快速部署,快速遷移。

    5、通過智能代理,可實現(xiàn)異構開發(fā)語言間的相互通訊。

    6、系統(tǒng)從集中式設計變成網(wǎng)絡化,節(jié)點化的分布式設計,可無限延申業(yè)務體系。

    7、智能代理的分布式接入架構對傳統(tǒng)的PaaS集中接入式架構發(fā)起了挑戰(zhàn),但成本更低,新業(yè)務接入迅速,舊業(yè)務系統(tǒng)無需推倒重來。

    極客網(wǎng)企業(yè)會員

    免責聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準確性及可靠性,但不保證有關資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責。本網(wǎng)站對有關資料所引致的錯誤、不確或遺漏,概不負任何法律責任。任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權或存在不實內(nèi)容時,應及時向本網(wǎng)站提出書面權利通知或不實情況說明,并提供身份證明、權屬證明及詳細侵權或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關文章源頭核實,溝通刪除相關內(nèi)容或斷開相關鏈接。

    2019-09-11
    數(shù)字動能發(fā)布分布式智能代理xPort V1.0
    xPort V1.0 - 基于“Service Mesh”下一代分布式微服務框架繼發(fā)布面向量化金融的C++分布式xRPC通訊框架后,數(shù)字

    長按掃碼 閱讀全文