鯤鵬DevKit助力海通證券高效開發(fā)互聯(lián)網(wǎng)行情系統(tǒng),性能提升26%
數(shù)字技術(shù)驅(qū)動證券行業(yè)發(fā)展成為行業(yè)內(nèi)廣泛共識,在經(jīng)濟業(yè)務(wù)、財富管理、系統(tǒng)運維、風險管理等領(lǐng)域,數(shù)字技術(shù)的應(yīng)用場景在不斷拓寬,移動互聯(lián)、人工智能、區(qū)塊鏈、云計算等技術(shù)的交叉融合應(yīng)用也逐漸成為證券行業(yè)提高運營效率、增強盈利能力的有力抓手。
目前國內(nèi)多數(shù)證券公司可通過數(shù)字技術(shù)提供遠程開戶、在線交易、智能客服等基礎(chǔ)服務(wù),但與國外領(lǐng)先機構(gòu)相比,數(shù)字技術(shù)的應(yīng)用水平仍存在較大差距,數(shù)據(jù)治理能力薄弱,數(shù)據(jù)價值無法得到充分挖掘和發(fā)揮的現(xiàn)象較為普遍。證券行業(yè)仍需積極推進數(shù)字化轉(zhuǎn)型,探索行業(yè)成功的“新業(yè)態(tài)、新模式”。
互聯(lián)網(wǎng)行情系統(tǒng)作為海通證券的關(guān)鍵業(yè)務(wù)系統(tǒng)之一,支持滬、深、北、港美股、國內(nèi)外期貨、全球指數(shù)等國內(nèi)外31個市場level-1、level-2行情數(shù)據(jù)的服務(wù),為10萬多只證券,500多個板塊,400多個概念,提供7*24小時行情數(shù)據(jù)服務(wù),系統(tǒng)累積歷史數(shù)據(jù)超過25T,日增數(shù)據(jù)在20G左右。
【互聯(lián)網(wǎng)行情系統(tǒng)業(yè)務(wù)示意圖】
該系統(tǒng)的行情數(shù)據(jù)更新快慢以及數(shù)據(jù)的準確性在很大程度上會影響客戶的交易決策,傳統(tǒng)的ICT架構(gòu)無法支持平臺表現(xiàn)出更強的創(chuàng)造性和競爭力。海通證券對承載該業(yè)務(wù)的底層基礎(chǔ)設(shè)施提出了更高的要求:
高吞吐量
行情系統(tǒng)具有明顯的潮汐特征,每天特定開盤時間段以及牛市期間突發(fā)業(yè)務(wù)量的激增,并發(fā)訪問量會高于收盤期間幾十倍,最大系統(tǒng)QPS為200萬/秒,最大推送量高達1400萬筆/秒,同時要求數(shù)據(jù)準確度達到小數(shù)點后4位;
低時延
高頻的行情發(fā)布周期決定了對行情系統(tǒng)必須滿足低時延的要求,全鏈路行情數(shù)據(jù)更新需要在毫秒級完成;
高可靠
證券業(yè)務(wù)的穩(wěn)定可靠運行,是行業(yè)監(jiān)管的基本要求,任何1筆數(shù)據(jù)的丟失會影響最終計算結(jié)果,也可能造成客戶損失等問題。
鯤鵬平臺天生的多核高并發(fā)、海量吞吐等能力,能夠很好的滿足上述需求,且低功耗能夠節(jié)約更多成本;
鯤鵬還提供完善的鯤鵬DevKit開發(fā)套件以及專業(yè)服務(wù),能夠幫助用戶快速完成應(yīng)用的遷移、開發(fā)、編譯和調(diào)優(yōu),助力行業(yè)應(yīng)用的高效創(chuàng)新。
基于以上考慮,海通證券與鯤鵬達成了合作意愿,在鯤鵬上原生開發(fā)「互聯(lián)網(wǎng)行情系統(tǒng)」,通過該方案實現(xiàn)全球31個市場的行情接入、轉(zhuǎn)碼、分發(fā)等主要功能和相關(guān)衍生指標的計算。
【互聯(lián)網(wǎng)行情系統(tǒng)業(yè)務(wù)架構(gòu)圖】
基于動態(tài)二進制翻譯工具ExaGear實現(xiàn)互聯(lián)網(wǎng)行情系統(tǒng)的快速遷移
在該項目適配鯤鵬的開始階段,開發(fā)人員需要將整個互聯(lián)網(wǎng)行情系統(tǒng)遷移到鯤鵬平臺上。由于該系統(tǒng)的關(guān)鍵組件之一行情轉(zhuǎn)碼模塊,涉及大量代碼且作為無法找到源碼,給遷移工作帶來不少挑戰(zhàn):行情轉(zhuǎn)碼模塊接入了境內(nèi)外30多個市場的行情數(shù)據(jù),很多市場是通過第三方API接入的,但多數(shù)第三方既無ARM版本API也暫無支撐改造計劃,項目組無法掌握對應(yīng)的源碼,導致遷移工作幾乎無法進行。
鯤鵬DevKit針對無源碼遷移場景提供了動態(tài)二進制翻譯工具ExaGear,能夠在軟件執(zhí)行過程中將x86指令直接翻譯為鯤鵬可識別的指令,使得絕大部分x86應(yīng)用無需重新編譯和修改即可在鯤鵬上運行。最終開發(fā)人員屏蔽了底層平臺的差異,高效完成了整個互聯(lián)網(wǎng)行情系統(tǒng)的快速遷移,且性能損耗控制在了10%以內(nèi)。
【動態(tài)二進制翻譯工具ExaGear遷移示意圖】
通過畢昇編譯器和性能分析工具助力互聯(lián)網(wǎng)行情系統(tǒng)新版本高效開發(fā),性能最高提升26%
遷移完成之后,為持續(xù)滿足行情系統(tǒng)的安全穩(wěn)定、運維高效可控以及迭代靈活等要求,海通證券計劃在鯤鵬平臺上進行該系統(tǒng)新版本的開發(fā)迭代。
在開發(fā)過程中,為提升編譯效率,將平臺之前使用的開源GCC升級為畢昇編譯器。針對計算密集型、海量數(shù)據(jù)處理的應(yīng)用場景,畢昇編譯器基于LLVM針對鯤鵬平臺進行了深度優(yōu)化,通過使能循環(huán)優(yōu)化,自動向量化,內(nèi)存布局優(yōu)化等高性能編譯算法,大幅提升指令和數(shù)據(jù)吞吐量,最大限度地釋放鯤鵬平臺的強勁算力。
此外,由于分析行情轉(zhuǎn)發(fā)和行情主站兩大模塊需要對基礎(chǔ)行情、分時 K 線成交漲跌排行等數(shù)據(jù)進行實時分析,對性能要求比較高。因此,在新版本開發(fā)完成之后,技術(shù)人員還使用了鯤鵬DevKit性能分析工具對這兩個模塊進行了性能優(yōu)化:
基于系統(tǒng)分析功能進行熱點函數(shù)分析,識別到分析行情轉(zhuǎn)發(fā)有一定的數(shù)據(jù)延遲,在工具的建議下,替換了鯤鵬平臺的匯編指令(如ldaxr、stlxr等),優(yōu)化之后采用2倍深圳流行情數(shù)據(jù)進行回放測試,5小時業(yè)務(wù)壓測下內(nèi)部延遲縮短了26.42%。
【通過鯤鵬DevKit優(yōu)化后的行情轉(zhuǎn)發(fā)的性能對比】
基于系統(tǒng)性能分析工具進行進/線程分析,識別到行情主站出現(xiàn)響應(yīng)延遲,通過鎖優(yōu)化降低鎖的粒度、將互斥鎖修改為自旋鎖以提高數(shù)據(jù)處理能力。在相同的配置環(huán)境下,25k連接時客戶端響應(yīng)延遲縮短12.25%。
【通過鯤鵬DevKit優(yōu)化后的行情主站請求處理的性能對比】
通過上述一系列的性能調(diào)優(yōu),分析行情轉(zhuǎn)發(fā)的數(shù)據(jù)處理能力和行情主站并發(fā)能力都得到了大幅提升,實現(xiàn)了行情資訊信息的快速轉(zhuǎn)碼和分發(fā),為用戶提供更及時、優(yōu)質(zhì)的行情資訊服務(wù)體驗。
目前海通證券「互聯(lián)網(wǎng)行情系統(tǒng)」版本已在華為云等平臺上線6個站點,當前總體用戶數(shù)超4200萬,月平均活躍數(shù)近550萬。該方案也獲得了行業(yè)信息技術(shù)應(yīng)用創(chuàng)新基地行業(yè)共研課題的最具前瞻價值獎并入選IDC中國金融新基建案例,同時也在鯤鵬應(yīng)用創(chuàng)新大賽2021上海賽區(qū)金融賽道獲得了金獎榮譽。這不僅驗證了該方案的高性能、高兼容性、完整性和成熟度等技術(shù)優(yōu)勢,也是了行業(yè)渠道交易云化轉(zhuǎn)型的重要一步。
作為鯤鵬計算產(chǎn)業(yè)生態(tài)的重要伙伴,海通證券已與華為建立了戰(zhàn)略合作伙伴關(guān)系。未來,海通證券還將聯(lián)合鯤鵬,加速推進信息化建設(shè),不斷深化在客戶服務(wù)、運營管理、風險合規(guī)和財務(wù)管理等業(yè)務(wù)領(lǐng)域的數(shù)據(jù)應(yīng)用,全面賦能公司業(yè)務(wù)創(chuàng)新發(fā)展,也為行業(yè)金融科技創(chuàng)新貢獻更具競爭力的行業(yè)解決方案。
海通證券股份有限公司
海通證券股份有限公司(以下簡稱海通證券)成立于1988年,是國內(nèi)成立最早、綜合實力最強的證券公司之一,經(jīng)紀、投行和資產(chǎn)管理等傳統(tǒng)業(yè)務(wù)位居行業(yè)前茅,融資融券、股指期貨和PE投資等創(chuàng)新業(yè)務(wù)領(lǐng)先行業(yè)。作為行業(yè)金融科技先行者和探索者,海通證券踐行“數(shù)字化轉(zhuǎn)型”戰(zhàn)略,積極融入國家高質(zhì)量發(fā)展和上海國際金融中心建設(shè)大局,準確識變、科學應(yīng)變、主動求變。