[发明专利]一种多节点撮合订单的方法、系统及设备在审
申请号: | 202210610532.1 | 申请日: | 2022-05-31 |
公开(公告)号: | CN115204965A | 公开(公告)日: | 2022-10-18 |
发明(设计)人: | 徐鸿杰 | 申请(专利权)人: | 杭州隆埠科技有限公司 |
主分类号: | G06Q30/06 | 分类号: | G06Q30/06;G06F16/25;G06F9/54 |
代理公司: | 上海百一领御专利代理事务所(普通合伙) 31243 | 代理人: | 杨颜颜 |
地址: | 310012 浙江省杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 节点 撮合 订单 方法 系统 设备 | ||
1.一种多节点撮合订单的方法,其中,所述方法包括:
获取多个待处理订单请求,将多个待处理订单请求转入多个代理服务中,通过所述多个代理服务对所述多个待处理请求进行并行预处理得到多个消息类型的订单;
将所有消息类型的订单放入第一流处理消息队列中,将每个第一流处理消息队列中的消息类型的订单发送至多个撮合引擎;
通过所述多个撮合引擎对所述消息类型的订单进行撮合处理,得到成交信息,将所述成交信息放入第二流处理消息队列中;
将第二流处理消息队列中的成交信息进行去重处理,得到去重后的成交信息,将去重后的成交信息写入数据库,完成订单撮合处理。
2.根据权利要求1所述的方法,其中,所述通过所述多个代理服务对所述多个待处理请求进行并行预处理得到多个消息类型的订单,包括:
获取所有待处理订单的订单参数,通过所述多个代理服务对所述订单参数进行并行校验,得到通过校验的订单;
将通过校验的订单对应的格式转成消息类型,得到消息类型的订单。
3.根据权利要求1所述的方法,其中,将每个第一流处理消息队列中的消息类型的订单发送至多个撮合引擎,包括:
基于第一流处理消息队列的广播机制将每个第一流处理消息队列中的消息类型的订单发送至多个撮合引擎。
4.根据权利要求1所述的方法,其中,所述通过所述多个撮合引擎对所述消息类型的订单进行撮合处理,得到成交信息,包括:
使用所述多个撮合引擎匹配所述消息类型的订单,当存在成交的订单时,根据成交的订单对应的信息生成成交信息。
5.根据权利要求4所述的方法,其中,将第二流处理消息队列中的成交信息进行去重处理,包括:
使用幂等队列对第二流处理消息队列中的成交信息进行去重处理。
6.根据权利要求5所述的方法,其中,根据成交的订单对应的信息生成成交信息,包括:
根据成交的订单对应的信息生成成交订单唯一标识码。
7.根据权利要求6所述的方法,其中,使用幂等队列对第二流处理消息队列中的成交信息进行去重处理,包括:
获取单一成交信息时判断在幂等队列中是否存在所述成交信息对应的订单唯一标识码,若是,则抛弃所述成交信息;
若否,则在幂等队列中存储所述成交信息对应的订单唯一标识码。
8.根据权利要求1所述的方法,其中,所述将去重后的成交信息写入数据库之前,还包括:
根据去重后的成交信息确定对应的二进制日志文件。
9.根据权利要求1所述的方法,其中,所述第一流处理消息队列包括KAFKA,所述第二流处理消息队列包括KAFKA。
10.一种用于多节点撮合订单的系统,其中,所述系统包括至少一个代理服务、至少两个撮合引擎、去重模块和数据库,其中,
所述至少一个代理服务获取多个待处理订单请求,对所述多个待处理请求进行并行预处理得到多个消息类型的订单,将所有消息类型的订单放入第一流处理消息队列中,将每个第一流处理消息队列中的消息类型的订单发送至所述撮合引擎;
所述至少两个撮合引擎获取第一流处理消息队列中的消息类型的订单,对所述消息类型的订单进行撮合处理,得到成交信息,将所述成交信息放入第二流处理消息队列中;
所述去重模块获取所述第二流处理消息队列中的成交信息,将所述成交信息进行去重处理,得到去重后的成交信息,以使得所述数据库获取所述去重后的成交信息;
所述数据库获取所述去重后的成交信息,完成订单撮合处理。
11.根据权利要求10所述的系统,其中,所述系统还包括日志模块,其中,
所述日志模块根据去重后的成交信息确定对应的二进制日志文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州隆埠科技有限公司,未经杭州隆埠科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210610532.1/1.html,转载请声明来源钻瓜专利网。