早期恒生与金证金融 IT 架构:集中交易时代的双雄演进#
从营业部级系统,到全国集中交易平台。
中国证券 IT 的第一次架构革命,始于 2000 年前后的金融中间件国产化浪潮。
一、时代背景:从营业部孤岛到全国大集中#
1.1 90 年代证券 IT 架构#
上世纪 90 年代,中国证券行业的信息系统基本以营业部为中心。
典型架构:
交易终端
|
营业部应用服务器
|
本地数据库每个营业部拥有独立系统。
这种模式的问题:
- 数据无法统一
- 总部无法集中管理
- 风控困难
- 系统扩展能力有限
- 运维成本高
1.2 千禧年前后的行业转折#
2000 年以后,证券行业进入:
“集中交易时代”
目标:
全国营业部↓
总部集中交易中心↓
核心数据库中心这意味着证券 IT 必须解决:
- 海量并发
- 统一事务处理
- 高可靠交易
- 跨网络通信
- 数据一致性
当时全球金融 IT 的主流技术:
- IBM CICS
- IBM MQ
- BEA Tuxedo
- Oracle Database
- IBM AIX 小型机
- EMC 存储
中国金融软件厂商开始自主研发:
- 应用服务器
- 交易中间件
- 消息中间件
其中形成两条代表路线:
恒生:
AR/AS
↓
CRES
↓
Light-JRES
金证:
KCXP/KCBP
↓
KOCA二、早期金融 IOE 架构模型#
2000 年左右金融核心系统典型架构:
用户终端
|
应用访问层
|
---------------------
中间件层
---------------------
|
交易处理服务
|
Oracle/DB2
|
IBM服务器 + EMC存储
核心特点:
1. 数据库中心化#
数据库承担:
- 数据一致性
- 事务管理
- 锁控制
- 存储过程
Oracle 成为金融行业事实标准。
2. 中间件出现#
随着交易量增长:
直接数据库连接模式出现问题。
例如:
10000个终端↓
10000个数据库连接数据库压力巨大。
中间件出现:
10000个终端↓
中间件连接池↓
数据库中间件承担:
- 连接管理
- 请求路由
- 负载均衡
- 事务协调
三、恒生早期架构:AR/AS 三层体系#
3.1 恒生技术演进时间线#
| 时间 | 产品 | 架构意义 |
|---|---|---|
| 1997 | BTRV柜台系统 | 本地数据库时代 |
| 1998 | 98 SQL版 | SQL Server架构 |
| 2001 | 企业版1.0 | AR/AS中间件诞生 |
| 2004 | 企业版3.0 | Oracle体系 |
| 2008 | CRES | 替代Tuxedo |
| 2018以后 | Light-JRES | 云原生演进 |
3.2 AR/AS 架构#
恒生自主研发:
AR(Application Router)#
应用路由层:
负责:
- 请求分发
- 负载均衡
- 网络隔离
AS(Application Server)#
应用服务器:
负责:
- 业务执行
- 交易处理
- 业务模块运行
架构:
客户端
|
AR
应用路由层
|
AS
应用服务器层
|
Oracle数据库
|
IBM AIX服务器
核心突破:
系统不再直接依赖数据库,而是通过中间件完成请求转发和业务处理。
3.3 恒生 O32 早期架构#
恒生资管系统 O32 早期:
客户端
|
应用服务器
|
Tuxedo中间件
|
Oracle数据库
|
存储系统特点:
- 三层架构
- Oracle中心化
- 业务逻辑较强耦合
- 数据库承担大量处理
限制:
- 模块耦合较深
- 外部系统通过数据表交换
- 扩展能力有限
3.4 CRES 架构升级#
2008 年左右:
恒生推出:
CRES(C++ Reused Extend Simple)
架构:
客户端
|
CRES中间件
|
业务模块
|
Oracle数据库CRES 集成:
- 通讯处理
- 请求路由
- 交易处理
- 数据访问
并逐步替代:
O32 中使用的 Tuxedo 中间件。
演进路线:
AR/AS
↓
CRES
↓
Light-JRES
↓
云原生金融平台四、金证早期架构:KCXP/KCBP 四层体系#
4.1 技术演进时间线#
| 时间 | 事件 |
|---|---|
| 1998 | 第三代证券交易系统 |
| 2001 | 提出四层体系架构 |
| 2001-2003 | KCXP/KCBP封闭开发 |
| 2003 | 中信证券集中交易上线 |
| 2003 | 国泰君安分布式集中交易上线 |
| 2005 | 新一代集中交易系统 |
| 2013 | 余额宝项目 |
| 2020以后 | KOCA平台 |
4.2 四层架构模型#
金证提出:
客户端-通信中间件-交易中间件-数据库
架构:
客户端
|
KCXP
通讯交换中间件
|
KCBP
交易处理中间件
|
数据库
DB2 / Oracle / SQL Server
4.3 KCXP:通讯交换平台#
KCXP 定位:
消息中间件。
主要功能:
- 消息传输
- 网络协议转换
- 系统间通信
- 异步队列
支持:
- TCP/IP
- UDP
- SNA
- IPX/SPX
- NetBIOS
作用:
解决:
“不同机器、不同网络、不同应用之间如何可靠通信”
4.4 KCBP:核心业务平台#
KCBP 定位:
交易处理中间件。
负责:
- 事务管理
- 数据库连接
- 业务执行
- 资源调度
业务模块:
KCBP
|
+---- LBM交易模块
|
+---- 清算模块
|
+---- 风控模块4.5 金证典型部署#
2005年前后:
营业部终端|
KCXP
|
KCBP
|
Oracle / DB2 / SQL Server|
Unix/Linux/Windows服务器特点:
多数据库#
支持:
- Oracle
- DB2
- SQL Server
多操作系统#
支持:
- UNIX
- Linux
- Windows
- AIX
异构能力#
可以运行:
- IBM小型机
- x86服务器
五、恒生 vs 金证架构对比#
| 维度 | 恒生 | 金证 |
|---|---|---|
| 架构模型 | 三层架构 | 四层架构 |
| 通讯层 | AR | KCXP |
| 交易层 | AS | KCBP |
| 数据库策略 | Oracle为主 | 多数据库 |
| 业务模块 | AS组件 | LBM模块 |
| 核心理念 | 应用服务器 | 交易处理中间件 |
| 代表产品 | O32 | 集中交易系统 |
| 演进方式 | 快速替代升级 | 长期演进 |
六、为什么金融系统必须需要中间件?#
很多人会问:
为什么不能直接连接数据库?
早期简单系统:
应用程序
|
数据库但是金融系统规模扩大后:
1. 数据库连接爆炸#
例如:
10000终端
↓
10000数据库连接数据库无法承受。
中间件:
10000终端
↓
连接池
↓
数据库2. 金融事务复杂#
证券交易需要:
- 原子性
- 一致性
- 回滚
- 分布式事务
中间件提供:
- XA事务
- 事务协调
- 故障恢复
3. 避免数据库成为应用服务器#
直接写存储过程:
应用
|
数据库存储过程问题:
- 数据库压力巨大
- 难以迁移
- 技术锁定
中间件模式:
应用
|
业务中间件
|
数据库业务逻辑从数据库释放。
七、两种技术哲学#
恒生:架构持续进化#
恒生路线:
AR/AS
↓
CRES
↓
Light-JRES特点:
- 架构不断重构
- 快速拥抱新技术
- 产品代际明显
金证:基石长期演进#
金证路线:
KCXP/KCBP
↓
KROUTER/KADP
↓
KOCA特点:
- 长生命周期
- 保护客户投资
- 稳定优先
八、中国金融 IT 国产化的重要意义#
2000年前后:
中国金融核心系统:
IBM
Oracle
Tuxedo
MQ逐渐演进:
国产金融软件
↓
自主中间件
↓
自主核心交易系统AR/AS 与 KCXP/KCBP:
代表了中国金融软件第一次大规模国产化尝试。
九、总结:集中交易时代的双雄演进#
2000-2010 年:
是中国证券 IT 架构最重要的十年。
恒生解决:
如何构建高性能应用服务器体系。
路线:
AR/AS
↓
CRES
↓
Light-JRES金证解决:
如何打造稳定可靠的交易处理中间件。
路线:
KCXP/KCBP
↓
KOCA两家公司虽然选择不同:
- 恒生强调架构演进
- 金证强调技术基石
但共同完成了一件事情:
让中国证券市场从营业部级系统,进入全国集中交易时代。
今天的 O45、A8、FS2.5、云原生金融平台,都建立在这一代中间件革命的基础之上。
理解 AR/AS 与 KCXP/KCBP,就是理解中国金融 IT 从 IOE 时代走向自主架构时代的起点。