日本在线不卡一区-麻豆专区一区二区三区四区五区-久久久久久影院-国产亚洲第一伦理第一区-中文字幕乱码亚洲无线精品一区-亚洲插插视频

您的位置:首頁 > 要聞 >

數(shù)字動能發(fā)布量化金融C++RPC框架

2019-08-01 17:08:24 來源: 北國網(wǎng)

在發(fā)布投研投顧一體化產(chǎn)品及整體解決方案后,數(shù)字動能在量化金融領域的技術積累基礎上,發(fā)布其完全自主研發(fā),可實現(xiàn)多業(yè)務模塊間高速穩(wěn)定通訊

在發(fā)布“投研投顧一體化”產(chǎn)品及整體解決方案后,數(shù)字動能在量化金融領域的技術積累基礎上,發(fā)布其完全自主研發(fā),可實現(xiàn)多業(yè)務模塊間高速穩(wěn)定通訊的C++RPC分布式通訊框架 –xRPC。xRPC是國內首個面向量化金融領域,基于C++的RPC通訊框架,可廣泛應用于金融領域有高算力、大數(shù)據(jù)傳輸需求的多業(yè)務間通訊場景,是金融行業(yè)實現(xiàn)集中式業(yè)務中臺,解決業(yè)務間互聯(lián)互通的核心通訊技術。

一、投研投顧一體化的多業(yè)務場景需要分布式通訊框架支持

數(shù)字動能自成立以來專注于量化技術在資產(chǎn)管理業(yè)務中的探索和實踐,利用金融工程+軟件工程為特點的量化技術,數(shù)字動能先后陸續(xù)落地了量化策略交易終端AT、策略集中業(yè)務中臺iMOM和SMD指數(shù)分析系統(tǒng)等量化投研產(chǎn)品。業(yè)務涵蓋了量化投研生產(chǎn),研究治理,再到智能投顧手機端的整個投研投顧產(chǎn)品線,產(chǎn)品間既互相聯(lián)系,又互相獨立。結合自身經(jīng)驗積累,2017年,數(shù)字動能面向大資管業(yè)務提出“投研投顧一體化”整體解決方案,目前在券商、期貨和公募基金公司已經(jīng)陸續(xù)獲得應用案例。

數(shù)字動能基于量化科技的創(chuàng)新步伐并未停止,在實踐中,“投研投顧一體化”解決方案以產(chǎn)品為中心的設計模式將迎來更大的變革。針對投研投顧中的大量定制化、業(yè)務多樣、功能場景復雜的特點,解決方案產(chǎn)品間需要解決跨部門、跨業(yè)務、多場景業(yè)務整合和業(yè)務間數(shù)據(jù)通訊問題。要構建好投研前端、管理中臺和業(yè)務轉化的投研投顧一體化解決方案,一個可以組合更靈活、業(yè)務細粒度更高、 開放性更強的投研集中業(yè)務平臺成為技術實現(xiàn)的難點。解決這些問題的首要關鍵技術在于,是否可以構建出一套統(tǒng)一的通訊方式,既可以滿足業(yè)務/應用間的通訊需要,又要兼顧金融行業(yè)高速穩(wěn)定特性的通訊框架。在定制類投研業(yè)務模塊的開發(fā)過程中,通過約定的分布式通訊協(xié)議,實現(xiàn)服務間高速通訊。業(yè)界普遍采用的RPC通訊方式成為了首選。

二、通用RPC框架介紹

Remote Prodecure Call是程序間的遠程調用的簡稱,業(yè)界目前普遍采用RPC實現(xiàn)程序間調用,一個標準的RPC調用過程如圖1所示:

圖1

如圖1,兩個程序之間能夠通信的前提,必須要有一個服務發(fā)現(xiàn)機制。傳統(tǒng)的做法是雙方先約定好地址,在各個服務都提前知道對方地址的前提下實現(xiàn)通訊,這種方式叫靜態(tài)路由。靜態(tài)路由的通訊方式在一般情況下可以滿足簡單的程序間調用需求。但是隨著業(yè)務的發(fā)展,服務數(shù)量的增多讓靜態(tài)路由變得很難滿足需求,同時后臺服務有動態(tài)上下線的需求,靜態(tài)路由表更新不及時將導致一系列問題。為了解決靜態(tài)路由問題,大部分RPC框架引入了服務注冊中心來實現(xiàn)動態(tài)路由的功能。如下圖2所示:

圖2(注:此圖省略了序列化/反序列化,運行時管理層以及傳輸層的步驟)

動態(tài)路由改變了原來的應用方式,被調用方服務啟動的時候,先把自身的地址注冊到服務注冊中心。調用方發(fā)起RPC調用之前,先到服務注冊中心里面獲取被調用方的地址信息后才能發(fā)起RPC請求。

三、xRPC框架的提出

數(shù)字動能在解決投研投顧一體化解決方案中,一些特殊服務(如回測、高頻數(shù)據(jù)傳輸?shù)?由于信息傳輸頻繁,數(shù)據(jù)并發(fā)量大和信息傳遞種類繁多,可能會產(chǎn)生硬件資源或網(wǎng)絡資源消耗,通訊效能降低的情況。在實踐中,我們認為RPC框架還應有更多的改進空間,數(shù)字動能架構組著手改進RPC通訊框架,以提升應用間的通訊效率,提高信息交換的穩(wěn)定性。

四、xRPC的設計目的

A、強量化金融(算力調度、大數(shù)據(jù)量傳輸)應用場景

B、需要基于網(wǎng)絡層的高速數(shù)據(jù)傳輸支持

C、帶數(shù)據(jù)可靠性校驗的穩(wěn)定通訊支持

D、需要為服務/應用提供更高效的純異步并發(fā)調用

E、增強RPC動態(tài)路由算法

xRPC的設計目的是為了更好的滿足量化業(yè)務場景的高算力、高穩(wěn)定性和極速傳輸需要的服務/應用間調用。通過對傳統(tǒng)的RPC通訊框架進行全新設計,xRPC對服務間的通訊穩(wěn)定性、可靠性和通訊性能進行了深度優(yōu)化。xRPC分布式框架協(xié)議是面向量化金融領域(特別是面向投研投顧的應用場景)的純異步高性能框架。

xRPC的通訊方式示意圖

五、xRPC框架的特點

1、xRPC自帶服務注冊中心和動態(tài)路由方式

和其他RPC框架不同,xRPC同時本地緩存有一份路由表。在應用服務啟動時,xPRC協(xié)議會要求應用服務把自身的所有服務信息以及網(wǎng)絡地址注冊到服務注冊中心里。發(fā)送請求時,如果本地路由的管理層沒有發(fā)現(xiàn)相應的服務地址信息,xRPC會根據(jù)協(xié)議約定,先到服務注冊中心獲取相應服務的地址信息,由本地路由管理層直接使用長連接到對方的路由管理層中,后面如果再次發(fā)送到同一個服務里面的時候,不再需要從服務注冊中心獲取, 并且雙方是保持連接的, 能夠直接感知對方的狀態(tài), 不需要再通過服務注冊中心, 這種方式同時也能夠很好的降低服務注冊中心的壓力。

2、xRPC全新設計的高性能序列化方法

根據(jù)量化金融的業(yè)務使用特點,把特定業(yè)務場景松耦合至多個服務間交互的直接代價就是增加了服務間通訊壓力,對服務間相互調用的性能要求變得極其苛刻。xPRC對RPC框架中的序列化方式進行全新設計重構,設計出了一個高性能的序列化與反序列化的方法,來滿足量化金融對性能要求極其苛刻的場景。

xSerial:全新的高速RPC的序列化方法

A、對數(shù)據(jù)類型的改進

xRPC的新序列化方法被稱為xSerial,xSerial目前除了支持基本類型之外, 還支持了list、set、map。xSerial在序列化之前,可以快速并且精確的計算出數(shù)據(jù)序列化后的所占用的內存大小,提前申請好對應大小的內存,避免了在序列化中既要序列化又要動態(tài)擴張內存的動作所帶來的性能損失。xSerial的C++的使用方法如下:

B、對序列化解析器IDL的改進

在使用的便捷性上, 大部分序列化與反序列化的方法,都是先編寫一個IDL文件,通過IDL再生成各種語言的代碼。xSerial也有自己的IDL支持,但是做出了改進, xSerial的IDL語言將與對應的xRPC原生語言相融合。也就是說,如果xRPC是跑在C++上,xSerial將相應提供一個C++的語法解析器,自動去掃描C++的代碼,識別出要生成序列化的代碼,使用者無需再額外編寫IDL文件。目前xSerial的IDL支持原生Go,C#, JAVA,Matlab和Python。

C、支持動態(tài)代碼序列化

xSerial除了支持靜態(tài)代碼的序列化方式之外,同時新增了動態(tài)代碼序列化的使用支持。在xRPC框架的序列化過程中,xSerial生成器在生成靜態(tài)代碼的時候,會同時生成對應的Json描述,這讓xRPC通訊過程中,任意第三方應用服務可以直接調用xSerial的Json描述,來對通訊數(shù)據(jù)進行動態(tài)的序列化與反序列化。

3、xRPC獨特的通訊層:接口和通訊方法松耦合設計

在通訊上和其他RPC框架不一樣,一般RPC框架的通訊方式都是具體且唯一的,同時一般RPC框架默認所有的應用都是獨立進程的。xRPC把通訊層抽象為接口,使得通訊變得更加靈活。在xRPC里面用戶只需定義接口,具體的通訊方式由底層自行決定。xRPC允許幾個應用部署在同一個進程中,并自動判斷應用是否同一個進程,選擇信息的傳輸是通過內存交互還是網(wǎng)絡(xRPC如果走網(wǎng)絡通訊,將基于TCP)。這個設計使得量化金融的一些特定應用場景,如:對某幾個服務間的大量數(shù)據(jù)高速交換過程可完全避免網(wǎng)絡間的通訊消耗。

4、xRPC使用特點:請求發(fā)起只能基于調用框架

xRPC的調用和其他RPC的調用方式不一樣,xRPC的調用必須基于調用框架才能發(fā)起請求,將徹底避免常見的Callback Hell問題。通過一個列子,看看xRPC是如何解決這個問題的:

A、發(fā)送單個RPC請求

B、發(fā)送多個順序的RPC請求

從上圖可以看到(注:忽略Exception和Finally),發(fā)送了SayHello之后,在其返回函數(shù)Then里面,只要調用Next方法,并且傳入調用下一個RPC的請求的參數(shù),即可繼續(xù)發(fā)起下一個RPC請求,比如這里在調用了SayHello2,又在SayHello2的返回函數(shù)里面調用了SayHello3,這種編寫的方式使得很好的解決了CallBack Hell的問題,讓代碼的維護性更好。

C、 同時發(fā)送多個RPC請求

同時發(fā)送多個RPC請求,使用的調用框架是BPParallelRPC,這樣同時發(fā)送的三個請求,可以在Then函數(shù)里面,分別取出各個RPC的請求結果。

以上通過對xRPC使用的方法介紹,解釋了為什么必須通過調用框架來發(fā)起RPC請求,這樣RPC的定義只需要定義一次即可。后面使用只需要更換調用RPC的調用框架,而不需要去修改RPC的定義,同時每一個RPC請求都會注冊到RPC請求管理器當中,由其對RPC進行重傳、超時等管理。

xRPC是唯一面向金融行業(yè)的純C++分布式RPC框架

六、為什么需要面向量化金融的分布式通訊框架

高速穩(wěn)定的分布式通訊框架是實現(xiàn)業(yè)務中臺的關鍵技術

業(yè)務中臺化,本質是解決多個業(yè)務可以通過一個中臺在彼此間實現(xiàn)互聯(lián)互通。因此業(yè)務中臺的設計中,其首要考慮的核心問題是如何把多部門多場景的各類業(yè)務可迅速接入并實現(xiàn)相互間可進行通訊。解決這個問題的關鍵,是擁有一套穩(wěn)定高效的分布式通訊框架。國內提供商用分布式框架解決方案的目前僅有國內極少數(shù)幾家科技公司,而國內提供面向金融行業(yè)的分布式框架更是少之又少,如螞蟻金服的SofaRPC分布式解決方案。SOFARPC 最早源于阿里內部的 HSF,是近期螞蟻金服開源的一個高可擴展性、高性能、生產(chǎn)級的 Java RPC 框架。它致力于簡化應用之間的 RPC 調用,為應用提供方便透明、穩(wěn)定高效的點對點遠程服務調用方案。

數(shù)字動能發(fā)布的xRPC框架與SofaRPC相比,擁有更高效的執(zhí)行效能和更輕量更靈活的調用方法等特點。他根據(jù)量化金融傳輸要求進行特定場景設計,在動態(tài)路由、序列化方法和通訊層協(xié)議中進行了大量場景針對設計,是一個穩(wěn)定高速的C++ RPC框架。憑借數(shù)字動能在量化金融領域的技術積累,xRPC更適合應用于量化金融、投研投顧領域的高算力和海量數(shù)據(jù)傳輸場景,可實現(xiàn)在不同的業(yè)務,如:回測執(zhí)行、實時行情訂閱、金融數(shù)據(jù)存取、復雜金融指標計算,因子生產(chǎn)等服務間快速信息交換的需求。隨著數(shù)字動能自主研發(fā)的C++RPC分布式通訊框架落地,意味其“投研投顧一體化”產(chǎn)品及方案將從圍繞產(chǎn)品的方案實施,向投研投顧集中業(yè)務中臺的戰(zhàn)略轉變。擁有一個分布式通訊框架技術,是衡量一個金融科技公司是否掌握業(yè)務(技術)中臺核心技術的關鍵。數(shù)字動能已擁有可讓多業(yè)務間可高速穩(wěn)定進行通訊的業(yè)務中臺核心技術。

關鍵詞:

精選 導讀

百合花語 百合的花語是什么

百合花的花語是純潔、熱烈的愛和永遠幸福。因其外貌的潔白純凈,故有著

發(fā)布時間: 2023-06-19 10:35
互聯(lián)網(wǎng)   2023-06-19

古代的剔骨之刑是指什么 古代的剔骨之刑是指什么刑法_微動態(tài)

劊子手把重要的骨頭直接拔出來,血肉還在身上,比如蝴蝶骨、鎖骨、頸椎

發(fā)布時間: 2023-06-19 10:57
互聯(lián)網(wǎng)   2023-06-19

當前資訊!王漫妮結局是跟誰在一起了 王漫妮結局介紹

1、王漫妮結局離開了梁正賢,她去留學了,她并不因為年齡而焦慮,三十

發(fā)布時間: 2023-06-19 10:45
互聯(lián)網(wǎng)   2023-06-19

焦點熱門:veromoda是什么牌子 veromoda中文叫什么

知名女裝品牌。veromoda中文名字是維莎曼。來自丹麥的北歐風情,曾經(jīng)奢

發(fā)布時間: 2023-06-19 10:45
互聯(lián)網(wǎng)   2023-06-19

豹房是干什么用的 何謂豹房|天天速看

1、豹房就是供皇帝驕奢淫欲的場所,勞民傷財。2、明朝的朱厚照(正德皇

發(fā)布時間: 2023-06-19 10:47
互聯(lián)網(wǎng)   2023-06-19

fat32和ntfs的區(qū)別 fat32和ntfs有什么不同

?fat32和ntfs的區(qū)別主要有:1 安全屬性,ntfs安全屬性更高;2 推出時

發(fā)布時間: 2023-06-19 10:55
互聯(lián)網(wǎng)   2023-06-19

焦點速看:環(huán)肥燕瘦的意思 詞語環(huán)肥燕瘦的意思

1、這則成語意思是形容美人有不同的體態(tài)而各擅其美,也借喻藝術作品風

發(fā)布時間: 2023-06-19 10:45
互聯(lián)網(wǎng)   2023-06-19

形容高興的成語有哪些 形容高興的成語有哪些? 環(huán)球聚焦

形容高興的成語有:1、囅然而笑:高興地笑起來。2、得意忘形:形容高興

發(fā)布時間: 2023-06-19 10:54
互聯(lián)網(wǎng)   2023-06-19

飛字組詞 飛字組詞有哪些 世界播報

1、飛鷹走馬[fēiyīngzǒumǎ]:放鷹追捕和騎馬追逐鳥獸。指打獵。2、

發(fā)布時間: 2023-06-19 10:33
互聯(lián)網(wǎng)   2023-06-19

獴是什么動物 獴的生活習性

1、獴是一種小型的哺乳動物,而且獴也是一些長身、長尾而四肢短的動物

發(fā)布時間: 2023-06-19 10:48
互聯(lián)網(wǎng)   2023-06-19

熱門TAG

more
中國外貿(mào)網(wǎng)簡介 重磅突發(fā)!王思聰在上海打人?警方剛剛通報 女子隨手捐10元4個月后收到還款道謝 看到回復破防 國內豬肉價格開啟新一輪周期?專家:國家調控政策正在起作用 彩電市場價格持續(xù)走低:50英寸千元輕松購還會降價嗎? 鶴崗中介談1.5萬全款買房:別沖動 詳情曝光系40年房齡的老房子價格自然便 穩(wěn)外貿(mào) 福建拓“新”途 福建也積極開辟國際物流新通道 這條名為BarMar的能源運輸路線以幫助緩解歐洲所面臨的能源危機 寧波銀行:聚焦主責主業(yè),更好服務實體經(jīng)濟 重磅利好!涉房企業(yè)A股融資審核放寬,“白名單”浮出水面 能源是經(jīng)濟發(fā)展的動力源泉 美國經(jīng)濟蕭條對汽車和電力市場的沖擊力有多 多頭醞釀更大爆發(fā)!美元有望再大漲近百點 廣西北部灣畔崛起國際大港 商企耕耘十年等來春暖花開時 中國A股半導體板塊周四大漲 十年時間增長超1200億元 2021年創(chuàng)造天津市進出口歷史最高紀錄 天津口岸完成進出口貿(mào)易值2381億美元 較2012年增長16.6% 深圳機場口岸通過發(fā)揮東南亞航線優(yōu)勢 不斷豐富進口水果品類 國際航線(含港澳臺)日均執(zhí)行客運航班量達143班次 創(chuàng)今年新高 待中吉烏鐵路建成后 將高效聯(lián)通中歐班列的中通道與南通道線路 中國與RCEP成員國經(jīng)過陸海新通道進出口總量52068標箱 國航已率先在空客、波音機型上開展可持續(xù)航空燃料應用 中國制造業(yè)屢創(chuàng)奇跡 牢牢站穩(wěn)世界“C位” 今年新疆不斷加大能源增產(chǎn)增供力度 新疆煤炭產(chǎn)量增長31.1%、排全國第2位 陶悅群計劃圍繞大健康等產(chǎn)業(yè)進行增資擴產(chǎn) 光伏電站位于Kharsaa地區(qū) 是卡塔爾首個太陽能發(fā)電廠 過去十年,重慶工業(yè)增加值總額由2012年的4291.4億元提高至2021年的7888.7億元 2021年鹽湖化工產(chǎn)業(yè)實現(xiàn)產(chǎn)值331.8億元 增長46.2% 切入儲能賽道的消費電池頭部玩家德賽電池近兩日連續(xù)打板漲停 6個二線城市首套房貸款利率跌破4% 低至3.8% 倡議項目將由德國聯(lián)邦經(jīng)濟和氣候保護部的能源研究預算提供資金