KCBP/KCXP vs AS/AR:国产证券中间件双子星的架构分野#
2000 年前后,中国证券行业进入集中交易、大集中时代。
券商从营业部烟囱式系统,逐渐走向集中式交易架构。彼时,国外成熟中间件如 IBM CICS、MQ、Tuxedo 已经成为大型金融系统的重要基础设施,但国内证券 IT 面临更复杂的问题:
- 多营业部接入
- 多操作系统并存
- 多数据库异构
- 高并发交易处理
- 高可靠事务保障
在这样的背景下,金证与恒生几乎同期启动自主中间件研发。
金证推出:
- KCBP(核心业务平台)
- KCXP(通讯交换平台)
恒生推出:
- AS(Application Server)
- AR(Application Router)
二者承担了类似使命:
为证券集中交易系统提供交易处理能力和通信调度能力。
但二十多年后的演进证明,两家公司选择了完全不同的技术路线。
一、整体定位:交易处理中间件 vs 通信路由中间件#
从功能域看:
| 功能领域 | 金证 | 恒生 |
|---|---|---|
| 交易处理 | KCBP | AS |
| 通信交换 | KCXP | AR |
| 业务承载 | LBM | DLL业务组件 |
| 集群调度 | KCXP队列 | AR路由 |
二者都类似经典金融中间件:
- 交易处理层接收业务请求
- 通信层负责系统间交互
- 中间件屏蔽底层环境差异
但核心思想不同。
金证路线:#
通过消息队列解耦系统。
恒生路线:#
通过应用路由组织服务。
这决定了后续所有架构差异。
二、KCXP vs AR:消息队列模型与应用路由模型#
1. KCXP:以消息为中心#
KCXP 的设计理念接近 IBM MQ:
应用程序
|
v
KCXP消息队列
|
v
业务处理节点核心特点:
- 消息进入队列
- 消费者主动获取
- 通信与业务解耦
KCXP主要负责:
- 消息存储
- 消息转发
- 网络屏蔽
- 异步通信
而不负责:
- 交易规则
- 业务状态
- 业务逻辑判断
这种模型天然适合:
- 高可靠交易
- 异步处理
- 大规模节点扩展
2. AR:以请求路由为中心#
恒生 AR 更接近应用服务器路由层:
客户端
|
v
接入AR
|
v
总线AR
|
v
AS业务服务AR负责:
- 服务定位
- 请求转发
- 负载均衡
一个请求到达系统后:
AR根据:
- 服务位置
- AS状态
- 当前负载
选择目标处理节点。
三、LBM vs DLL:业务模块设计哲学#
这是两家公司最有代表性的差异。
金证:LBM可装载业务模块#
KCBP采用:
Loadable Business Module
业务逻辑作为独立模块运行。
结构:
客户端
|
KCBP API
|
KCXP
|
KCBP Server
|
LBM
|
数据库特点:
- 动态加载
- 动态卸载
- 模块化部署
- 平台透明
LBM体现的是:
平台负责调度,业务作为插件存在。
优点:
- 业务隔离更强
- 系统扩展灵活
- 生命周期长
恒生:AS内部DLL组件#
AS采用:
- DLL业务组件
- 多线程处理
- 动态加载
结构:
AR
|
AS
|
DLL业务组件
|
数据库特点:
- 调用效率高
- 组件化明显
- 与AS运行环境结合紧密
体现的是:
应用服务器承载业务组件。
四、集群模型:队列驱动 vs 路由驱动#
这是两个系统最大的架构差异。
KCBP/KCXP:计算网格思想#
金证采用:
KCXP
|
---
| | |
KCBP1 KCBP2 KCBP3请求进入队列。
哪个节点空闲:
哪个节点处理。
特点:
- Pull模型
- 隐式负载均衡
- 节点动态加入
KCXP官方资料中描述:
单个KCXP可以支持大量KCBP节点组成集群,形成计算资源池。
AS/AR:服务路由思想#
恒生采用:
客户端
↓
AR
↓
AS1
AS2
AS3AS主动反馈状态:
- 当前负载
- 服务能力
AR根据状态选择节点。
特点:
- Push模型
- 显式路由
- 服务定位清晰
五、事务与可靠性#
KCBP#
公开资料显示:
KCBP提供:
- 交易完整性管理
- XA资源支持
- 崩溃自恢复
- 断线重连
- 主备链路
其设计目标:
让证券交易系统像大型机交易平台一样稳定。
AS/AR#
早期公开资料重点更多集中于:
- 三层架构
- 网络隔离
- 请求转发
- 负载均衡
后续能力逐渐由:
- CRES
- JRES
体系承接。
六、跨平台能力#
KCBP/KCXP#
金证从设计之初就强调异构环境:
支持:
- Windows
- Unix
- Linux
- AIX
- OS/400
- 多数据库环境
包括:
- Oracle
- DB2
- SQL Server
- Sybase
- MySQL
目标:
屏蔽硬件、操作系统、数据库差异。
AS/AR#
恒生早期重点:
- 券商集中交易
- 三层架构
- 网络隔离
后续通过:
CRES → Light-JRES
逐渐进入:
- 分布式
- 微服务
- Java技术体系
七、两条完全不同的演进路线#
金证:长生命周期路线#
KCBP/KCXP
|
|
v
HARE
|
v
KOCA体系特点:
- 保留核心能力
- 持续增强
- 保护客户投资
KCBP/KCXP像:
金融系统中的数据库内核。
恒生:代际替换路线#
AR/AS
↓
CRES
↓
Light-JRES特点:
- 快速升级
- 技术换代
- 架构重构
类似:
操作系统版本持续迭代。
八、核心差异总结#
| 维度 | KCBP/KCXP | AS/AR |
|---|---|---|
| 核心思想 | 消息队列 | 应用路由 |
| 通信模型 | 异步消息 | 请求转发 |
| 业务模型 | LBM插件 | DLL组件 |
| 负载均衡 | 队列驱动 | 路由驱动 |
| 服务发现 | 隐式 | 显式 |
| 集群思想 | 计算资源池 | 服务节点池 |
| 演进方式 | 长期演进 | 代际替换 |
| 技术哲学 | 稳定优先 | 架构升级优先 |
九、结语:两种国产金融IT哲学#
KCBP/KCXP 与 AS/AR 并不是简单的产品竞争。
它们代表了两种完全不同的软件工程思想:
金证:#
用复杂的中间件平台换取业务开发简单。
强调:
- 稳定
- 兼容
- 生命周期
- 可靠性
恒生:#
用合理的架构快速适应业务变化。
强调:
- 分层
- 服务化
- 快速演进
- 架构升级
如果把金融IT系统比作城市:
金证更像一座百年老城:
- 基础牢固
- 持续改造
- 历久弥新
恒生更像高速发展的新区:
- 规划先进
- 快速建设
- 不断升级
两条路线没有绝对优劣。
它们共同构成了中国证券行业自主中间件发展的重要历史样本。