使用TorQ框架管理多kdb Plant:架构方案选择咨询
TorQ框架多业务Plant部署方案选择
两种方案分析
方案1:启动3个独立TorQ Plant
- 优势:
- 业务完全隔离:每个Plant的进程、数据存储、资源都是独立的,某一业务(如期权)出现故障不会影响股票、外汇业务的运行,适配不同业务域的隔离需求
- 配置与维护简单:无需修改TorQ核心代码,直接复用默认Plant配置,每个Plant使用独立的配置文件、数据目录,部署和排查问题更直观
- 扩展性灵活:后续针对某一业务单独扩容(比如给股票业务增加HDB节点),仅需操作对应Plant,不会影响其他业务
- 劣势:
- 资源占用略高:每个Plant都要启动一套基础框架进程,会额外消耗部分系统资源
方案2:修改TorQ引入procname变量区分Plant
- 优势:
- 资源复用:所有业务共享同一套TorQ基础框架进程,节省系统资源
- 统一管理:所有业务进程在同一个TorQ实例下,便于集中监控和管理
- 劣势:
- 侵入性强:需要修改TorQ核心的订阅逻辑、进程命名规则,后续TorQ版本升级时极易出现兼容性问题
- 隔离性差:业务进程共享框架资源,某一业务的异常可能扩散到其他业务
- 开发复杂度高:需要自定义进程命名规则(如
OptiPx_tp、StockPx_tp),还要改造网关的表路由逻辑,确保select from tab1能自动识别所属Plant,调试和维护成本高
推荐方案
优先选择启动3个独立TorQ Plant,原因如下:
- 期权、股票、外汇属于差异较大的业务域,独立Plant的隔离特性更适配这种场景,能有效避免业务间的相互干扰
- TorQ原生支持多Plant部署,这也是官方推荐的业务隔离方式,无需修改核心代码,后续版本升级和维护更省心
- 网关跨Plant访问的需求可通过配置实现:在网关配置文件中添加所有Plant的RDB、HDB连接信息,通过表名前缀(如
opt_、eq_)或表内业务标识字段,让网关自动识别表所属Plant并路由查询请求
内容的提问来源于stack exchange,提问作者Alex R.
相关产品推荐
相关产品推荐

