华锐技术何志东:证券核心交易系统分布式改造将迎来规模化落地阶段
近年来,数字化转型成为证券业发展的下一战略高地,根据 2021 年证券业协会专项调查结果显示,71% 的券商将数字化转型列为公司战略任务。
在落地数字化转型战略过程中,证券业核心交易系统面临着不少挑战。构建新一代分布式核心交易系统成为券商落地数字化转型的有效路径,证券业核心交易系统分布式改造已是大势所趋。
证券业核心交易系统有什么需求?有哪些挑战?如何进行分布式架构升级?在 PingCAP 用户峰会 2023 上,华锐分布式技术实验室主任何志东接受采访时给出了他的观察和思考。

证券业核心交易系统面临挑战
在数字化转型的大背景下,金融业的系统架构都面临着新的需求和挑战。 由于业务的差异,银行、证券、保险三大金融行业对系统架构的需求既存在共性,也有不同。
何志东介绍,银行、证券、保险都属于金融业,金融业稳定第一,对系统的高可用能力要求极高,尤其是银行、证券对系统有更高的可用性要求。
相比于银行,证券业因自身的业务特性,对系统架构有独特的需求。首先是低延时,证券市场交易永远追求超低延时,证券核心交易系统需要微秒级(1 毫秒 = 1000 微秒)时延,银行系统达到毫秒级(1 秒 = 1000 毫秒)。其次是高并发,证券核心交易系统会有很多瞬间的脉冲,单一系统瞬间超万笔每秒,交易所侧的系统设计并发容量都是几十万笔每秒,这样的高并发量是双十一等购物节的峰值,但那并非常态,而高并发量是证券业的常态。在系统规模上,证券业的系统规模没有银行那么大。
“需要在小规模系统的情况下处理更高的并发,而且要求更低的时延,这就是证券业跟银行业核心交易系统的一个很重要的差别。”何志东说。
证券核心交易系统是证券公司交易执行平台,提供交易前端风控检查、订单生成、报盘、交易管理、运营等功能,为投资者提供交易服务。从 2005 年算起,上一代集中式架构的证券核心交易系统已经运行了近 18 年,证券行业正处在持续发展阶段,上一代系统面临着高可用、低延时、高吞吐、易扩展、安全方面的挑战,已经无法满足新的业务诉求。
“整个证券行业正在进入到新一代核心交易系统更新迭代的关键时间节点。”何志东说,证券业核心交易系统不断追逐新的技术,追求高可用和性能,支持全栈国产化以实现安全性,核心交易系统的分布式改造迫在眉睫。
今年 6 月,中国证券业协会印发《证券公司网络和信息安全三年提升计划(2023-2025)》,鼓励券商向分布式架构转型。计划明确鼓励有条件的券商积极推进新一代核心系统的建设,根据不同客户群开展核心系统技术架构的转型升级工作。积极从集中式专有技术架构向分布式、低时延、开放技术架构转型。
分布式改造加速破局
何志 东介绍, 上一代证券交易系统围绕数据库构建,太过于依赖数据库的能力。 而随着业务对极速低时延的需求加深,围绕着数据库构建系统的方式无法满足其低时延需求,假设每一步业务处理都要跟数据库进行交互,再往下走,数据库能达到毫秒级,系统不可能达到微秒级。
由于证券行业追求极致的低延时,需要从底层硬件、基础软件再到上层应用全方位整体探索,软硬件一起结合才能实现技术攻关。所以华锐技术 2017 年成立了分布式技术实验室,把业内先进的硬件技术应用进来,华锐技术新一代证券分布式核心交易系统的技术路线是去数据库集中化,采用低时延消息总线通信、业务逻辑内存化处理,进行分布式改造,以实现超低时延,这是目前行业内已经验证可行的方案。
全栈国产化的趋势下,华锐技术联合各生态伙伴打造全栈国产化解决方案,助力证券业进行分布式改造。比如华锐核心交易平台(ATP)与 TiDB 组成的新一代分布式核心系统联合解决方案,以解决证券核心交易系统的挑战。

ATP 基于分布式低时延消息总线构建,实现微秒级高并发交易,并实现应用层分布式弹性扩缩容,提供高吞吐、低时延等关键业务能力;ATP 实时将数据写入 TiDB,提升数据持久化和高可用能力,并提供对外部机构查询接口;基于 TiDB 原生分布式和跨机房多活能力,实现数据库的跨机房多活能力。
该联合解决方案是全栈国产化方案,采用国产服务器、国产操作系统和交换机。满足高可用特性,联合方案采用两地三中心(一主两备)高可用部署,主备数据中心采用主备高可用部署,组件间实时同步保持强一致性,任意单点故障实现自动切换,RPO=0,RTO<10 秒。应用和数据库都支持水平扩展。
何志东指出,分布式的联合解决方案所采用的交换机、PC 服务器等设备,单一设备可靠性、性能比不上小型机,但通过上层应用、数据库、基础设施的高可用方案设计,构建出时延更低、性能更强、可用性可靠性更高,且可横向扩展的整体解决方案。
何志东认为,随着去年头部券商国泰君安新一代核心交易系统上线投产,并完成全量 1500 万客户的迁移,业内对全栈国产化核心交易系统先进替代的信心进一步增强,未来也会有更多的券商跟进。相比于银行业,证券核心交易系统的规模较小,且标准化程度更高,更依赖供应商提供的标准解决方案,分布式改造进展会更快,证券业核心交易系统分布式改造将迎来规模化落地阶段。华锐技术也将继续联合 PingCAP 这样的分布式数据库厂商,推动证券业核心交易系统的分布式升级改造,他认为 PingCAP 此时推出中国战略,能够更好地满足国内证券市场的需求,未来可期。
相关文章:
华锐技术何志东:证券核心交易系统分布式改造将迎来规模化落地阶段
近年来,数字化转型成为证券业发展的下一战略高地,根据 2021 年证券业协会专项调查结果显示,71% 的券商将数字化转型列为公司战略任务。 在落地数字化转型战略过程中,证券业核心交易系统面临着不少挑战。构建新一代分布式核心交易…...
数据结构 -- ArrayList与LinkedList的区别
一、二者的相同点 1,它们都是继承自List接口。 二、二者的区别 1,数据结构:ArrayList是(Array动态数组)的数据结构;而LinkedList是(Link双向链表)的数据结构。ArrayList 自由性较…...
豪车托运为什么选小板
小板运输是一种适用于豪车客户的高效运输方式。它提供了快速、安全、便捷的服务,并且相对经济实惠。以下是关于小板运输的时效和价格的介绍: 时效:小板运输通常能够在短时间内完成车辆的运输。具体时效取决于起点和目的地之间的距离ÿ…...
【base64加密】js/ts的基础加密
base64的字符串简单加密,主用于网页缓存数据的加密。 适用于常规html、小游戏(egret、cocos、laya)等 原文参考:JS基于base64编码加密解密文本和图片(修订)_js base64加密-CSDN博客 测试:JS实…...
基于python的app程式开发
安装的库文件: 运行代码: # -*- coding:utf-8 -*- from kivy.app import App class HelloApp(App):pass if __name__ __main__:HelloApp().run() 结果画面:...
Spring Event学习
Spring Event学习 观察者模式是一种行为设计模式,它定义了对象之间的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并被自动更新。在这个模式中,改变状态的对象被称为主题,依赖的对象被称为观…...
UE4 HLSL学习笔记
在Custom配置对应ush文件路径 在HLSL中写入对应代码 Custom里面增加两个Input,名字必须和ush文件内的未知变量名字一样 然后就对应输出对应效果的颜色 这就是简单的加法运算 减法同理: 乘法除法同理 HLSL取最小值 HLSL取最大值 绝对值: 取余…...
报文的路由过程
路由转发过程 记住路由转发过程结论:报文ip是不变,mac改变。 mac地址在同一个广播域传输过程中是不变的;在跨越广播域的时候会发生改变的;而IP地址在传输过程中是不会改变的(除NAT的时候)。 ip地址本质上是…...
【CPP】类和对象
1- Classes and Objects Structures A struct in C is a type consisting of a sequence of data membersSome functions/Statements are needed to operate the data members of an object of a struct type 不不小心操作错误,不小心越界 Classes You should b…...
【多线程面试题二十】、 如何实现互斥锁(mutex)?
文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:如何实现互斥锁…...
hypercube背景设置为白色,绘制高光谱3D立方体
import scipy pip install wxpython PyOpenGL和Spectral需要本地安装 可参考链接https://blog.csdn.net/qq_43204333/article/details/119837870 参考:https://blog.csdn.net/Tiandailan/article/details/132719745?spm1001.2014.3001.5506Mouse Functions:left-cl…...
Visual Studio(VS)C++项目 管理第三方依赖库和目录设置
发现很多程序员存在这种做法:把项目依赖的第三方库的lib和dll放在项目目录下,或者复制到输出目录,因为每种配置都有不同的输出目录,所以要复制多份(至少包括Debug和Release两个输出目录),这些做…...
leetCode 2578. 最小和分割 + 排序 + 贪心 + 奇偶分组(构造最优解)
2578. 最小和分割 - 力扣(LeetCode) 给你一个正整数 num ,请你将它分割成两个非负整数 num1 和 num2 ,满足: num1 和 num2 直接连起来,得到 num 各数位的一个排列。 换句话说,num1 和 num2 中所…...
自定义实现图片裁剪
要实现这个功能,首先需要创建一个自定义的View,然后在该View中绘制背景框和裁剪后的图片。以下是一个简单的实现: 1. 创建一个名为CustomImageView的自定义View类,继承自View: import android.content.Context; impor…...
开发语言工具编程系统化教程入门和初级专辑课程上线
开发语言工具编程系统化教程入门和初级专辑课程上线 学习编程捷径:(不论是正在学习编程的大学生,还是IT人士或者是编程爱好者,在学习编程的过程中用正确的学习方法 可以达到事半功倍的效果。对于初学者,可以通过下面…...
【Truffle】二、自定义合约测试
一、准备测试 上期我们自己安装部署了truffle,并且体验了测试用例的整个测试流程,实际开发中,我们可以对自己的合约进行测试。 我们首先先明白自定义合约测试需要几个文件 合约文件:既然要测试合约,肯定要有合约的源码…...
场景交易额超40亿,海尔智家三翼鸟开始收获
文 | 螳螂观察 作者 | 余一 随着双十一的到来,国内的消费情绪再次被点燃。在这类大促之下,品牌们就像一个个天体,不断引动着市场潮汐,期待自己能触发更大的“海潮效应”。 所谓“海潮效应”是指,海水因天体的引力而…...
众和策略可靠吗?股票扛杆怎么玩?
可靠 股票扛杆是一种出资战略,经过假贷资金来增加出资金额,从而进步出资收益。这种战略在股票商场中被广泛运用,但一起也伴随着一定的危险。在本文中,咱们将从多个视点来剖析股票扛杆怎么玩。 首要,扛杆出资的原理是…...
解决连接Mysql出现ERROR 2013 (HY000): Lost connection to MySQL server at ‘waiting
在上一篇中解决Mysql ER_ACCESS_DENIED_ERROR: Access denied for user ‘root‘‘localhost‘ (using password: YES)-CSDN博客 写了mysql的密码报错问题,在执行 mysql -u root -p 出现了这个错误, ERROR 2013 (HY000): Lost connection to MySQL se…...
Hadoop YARN功能介绍--资源管理、调度任务
Hadoop YRAN介绍 YARN是一个通用资源管理系统平台和调度平台,可为上层应用提供统一的资源管理和 调度。 他的引入为集群在利用率、资源统一管理和数据共享等方面带来了好处。 1.资源管理系统 集群的硬件资源,和程序运行无关,比如内存、cu…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...
【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...
从深圳崛起的“机器之眼”:赴港乐动机器人的万亿赛道赶考路
进入2025年以来,尽管围绕人形机器人、具身智能等机器人赛道的质疑声不断,但全球市场热度依然高涨,入局者持续增加。 以国内市场为例,天眼查专业版数据显示,截至5月底,我国现存在业、存续状态的机器人相关企…...
Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...
Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...
脑机新手指南(七):OpenBCI_GUI:从环境搭建到数据可视化(上)
一、OpenBCI_GUI 项目概述 (一)项目背景与目标 OpenBCI 是一个开源的脑电信号采集硬件平台,其配套的 OpenBCI_GUI 则是专为该硬件设计的图形化界面工具。对于研究人员、开发者和学生而言,首次接触 OpenBCI 设备时,往…...
如何应对敏捷转型中的团队阻力
应对敏捷转型中的团队阻力需要明确沟通敏捷转型目的、提升团队参与感、提供充分的培训与支持、逐步推进敏捷实践、建立清晰的奖励和反馈机制。其中,明确沟通敏捷转型目的尤为关键,团队成员只有清晰理解转型背后的原因和利益,才能降低对变化的…...
消息队列系统设计与实践全解析
文章目录 🚀 消息队列系统设计与实践全解析🔍 一、消息队列选型1.1 业务场景匹配矩阵1.2 吞吐量/延迟/可靠性权衡💡 权衡决策框架 1.3 运维复杂度评估🔧 运维成本降低策略 🏗️ 二、典型架构设计2.1 分布式事务最终一致…...
DAY 26 函数专题1
函数定义与参数知识点回顾:1. 函数的定义2. 变量作用域:局部变量和全局变量3. 函数的参数类型:位置参数、默认参数、不定参数4. 传递参数的手段:关键词参数5 题目1:计算圆的面积 任务: 编写一…...
李沐--动手学深度学习--GRU
1.GRU从零开始实现 #9.1.2GRU从零开始实现 import torch from torch import nn from d2l import torch as d2l#首先读取 8.5节中使用的时间机器数据集 batch_size,num_steps 32,35 train_iter,vocab d2l.load_data_time_machine(batch_size,num_steps) #初始化模型参数 def …...
