一种仓位数据管理方法、装置及系统制造方法及图纸

技术编号:24331086 阅读:26 留言:0更新日期:2020-05-29 19:37
本申请实施例提供了一种仓位数据管理方法、装置及系统,所述方法包括:获取用户输入的仓位更改请求;其中,所述仓位更改请求包括仓位变更命令;根据所述仓位变更命令更改原数据,并将更改后的所述原数据发送至写入数据库;根据所述仓位变更命令生成变更消息,并将所述变更消息发送至查询数据库。与现有技术相比,本申请基于命令查询职责分离模式,将写入操作以命令的形式进行转发和处理,将仓位的更改过程记录下来并保存,从而将写入操作和查询操作分开进行,写入操作和查询操作是使用不同的系统组件,进而减少各个组件之间的依赖性,增强扩展性和可维护性,最终提高系统的可用性,提高用户体验度。

A method, device and system of bin data management

【技术实现步骤摘要】
一种仓位数据管理方法、装置及系统
本公开涉及数据通信
,尤其涉及一种基于CQRS的数据管理方法、装置及系统。
技术介绍
虚拟货币合约系统的核心是仓位系统,虚拟货币的所有变更,用户的操作都会反映到仓位上。仓位系统的稳定性、性能数据准确性都成为影响合约系统成败的关键。甚至仓位系统的数据计算错误有可能会造成交易所极大的损失。由于仓位系统处于核心位置,仓位系统必然会存在极大地数据计算需求,超大的计算量,以及极高概率的并发处理情况(查询和写入同时进行)。这也导致仓位系统可能存在一些问题:仓位系统和账户系统交互过程中,由于复杂的并发处理,数据可能会发生不一致的情况;查询和写入使用同一个mysql数据库,大量的请求和计算作用在同一条数据上,给数据造成极大地压力,同时也会造成仓位系统服务不稳定和性能的下降;查询和写入使用同一组件,导致强依赖性,扩展性极差同时不易于分工合作。以上三点最终导致系统的可用性降低,用户的体验度差。
技术实现思路
为克服相关技术的问题,本申请提供一种仓位数据管理方法、装置及系统,基于命令查询职责分离模式,减少各个系统组件之间的依赖性,增强扩展性和可维护性,从而提高系统的可用性,提高用户体验度。本申请的第一方面,提供一种仓位数据管理方法,所述方法包括:获取用户输入的仓位更改请求;其中,所述仓位更改请求包括仓位变更命令;根据所述仓位变更命令更改原数据,并将更改后的所述原数据发送至写入数据库;根据所述仓位变更命令生成变更消息,并将所述变更消息发送至查询数据库。结合一方面,在第一种可能的实现方式中,所述仓位更改请求标记有用户ID,所述仓位变更命令、所述原数据、所述写入数据库、所述变更消息以及所述查询数据库均存储于同一处理平台,所述用户ID和所述处理平台相对应。结合一方面,在第二种可能的实现方式中,所述原数据标记有第一时间信息,所述变更消息标记有第二时间信息。结合第二种可能的实现方式,在第三种可能的实现方式中,所述方法还包括:获取用户输入的数据查询请求,其中,所述数据查询请求包括数据查询命令,所述数据查询命令标记有第三时间信息;根据所述第三时间信息和所述第一时间信息之间的关系,从所述写入数据库获取与所述数据查询命令相对应的所述原数据;根据所述第三时间信息和所述第二时间信息之间的关系,从所述查询数据库获取与所述数据查询命令相对应的所述变更消息;根据所述变更消息更改所述原数据,得到查询数据。结合第三种可能的实现方式,在第四种可能的实现方式中,根据所述第三时间信息和所述第一时间信息之间的关系,从所述写入数据库获取与所述数据查询命令相对应的所述原数据,包括:如果所述第三时间信息和所述第一时间信息相同,则将写入数据库中与所述第一时间信息相对应的所述原数据作为与所述数据查询命令相对应的所述原数据;根据所述第三时间信息和所述第二时间信息之间的关系,从所述查询数据库获取与所述数据查询命令相对应的所述变更消息,包括:如果所述第三时间信息和所述第二时间信息相同,则将所述查询数据库与所述第二时间信息相对应的所述变更消息,作为与所述数据查询命令相对应的所述变更消息。本申请的第二方面,提供一种仓位数据管理装置,所述装置包括:第一请求获取单元,用于获取用户输入的仓位更改请求;其中,所述仓位更改请求包括仓位变更命令;第一更改单元,用于根据所述仓位变更命令更改原数据,并将更改后的所述原数据发送至写入数据库;消息生成单元,用于根据所述仓位变更命令生成变更消息,并将所述变更消息发送至查询数据库。结合二方面,在第五种可能的实现方式中,所述原数据标记有第一时间信息,所述变更消息标记有第二时间信息。结合第五种可能的实现方式,在第六种可能的实现方式中,所述装置还包括:第二请求获取单元,用于获取用户输入的数据查询请求,其中,所述数据查询请求包括数据查询命令,所述数据查询命令标记有第三时间信息;第一数据获取单元,用于根据所述第三时间信息和所述第一时间信息之间的关系,从所述写入数据库获取与所述数据查询命令相对应的所述原数据;第二数据获取单元,用于根据所述第三时间信息和所述第二时间信息之间的关系,从所述查询数据库获取与所述数据查询命令相对应的所述变更消息;第二更改单元,用于所述变更消息更改所述原数据,得到查询数据。结合第六种可能的实现方式,在第七种可能的实现方式中,所述第一数据获取单元,用于根据所述第三时间信息和所述第一时间信息之间的关系,从所述写入数据库获取与所述数据查询命令相对应的所述原数据,包括:如果所述第三时间信息和所述第一时间信息相同,则将写入数据库中与所述第一时间信息相对应的所述原数据作为与所述数据查询命令相对应的所述原数据;所述第二数据获取单元,用于根据所述第三时间信息和所述第二时间信息之间的关系,从所述查询数据库获取与所述数据查询命令相对应的所述变更消息,包括:如果所述第三时间信息和所述第二时间信息相同,则将所述查询数据库与所述第二时间信息相对应的所述变更消息,作为与所述数据查询命令相对应的所述变更消息。本申请的第三方面,提供一种仓位数据管理系统,所述系统包括:用户接口,用于接收用户输入的仓位更改请求和数据查询请求;其中,所述仓位更改请求包括仓位变更命令,所述数据查询请求包括数据查询命令;获取用户输入的数据查询请求,其中,所述数据查询请求包括数据查询命令,所述数据查询命令标记有第三时间信息数据写入装置,用于执行:根据所述仓位变更命令更改原数据,并将更改后的所述原数据发送至写入数据库;根据所述仓位变更命令生成变更消息,并将所述变更消息发送至查询数据库;其中,所述原数据标记有第一时间信息,所述变更消息标记有第二时间信息;数据查询装置,用于执行:根据所述第三时间信息和所述第一时间信息之间的关系,从所述写入数据库获取与所述数据查询命令相对应的所述原数据;根据所述第三时间信息和所述第二时间信息之间的关系,从所述查询数据库获取与所述数据查询命令相对应的所述变更消息;根据所述变更消息更改所述原数据,得到查询数据。本申请实施例提供一种仓位数据管理方法、装置及系统,包括:获取用户输入的仓位更改请求;其中,所述仓位更改请求包括仓位变更命令;根据所述仓位变更命令更改原数据,并将更改后的所述原数据发送至写入数据库;根据所述仓位变更命令生成变更消息,并将所述变更消息发送至查询数据库。与现有技术相比,本申请基于命令查询职责分离模式,将写入操作以命令的形式进行转发和处理,将仓位的更改过程记录下来并保存,从而将写入操作和查询操作分开进行,写入操作和查询操作是使用不同的系统组件,进而减少各个组件之间的依赖性,增强扩展性和可维护性,最终提高系统的可用性,提高用户体验度。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本专利技术的实施例,并与说明书一起用于解释本专利技术的原理。图1为本申请实施例提供的仓位数据管理方法的工作流程示意图;图2是本申请实施例提供的仓位数据管理系统的框架示意图;图3是本申请优选实施例提供的仓位数据管理方法的工作流程示意图本文档来自技高网...

【技术保护点】
1.一种仓位数据管理方法,其特征在于,所述方法包括:/n获取用户输入的仓位更改请求;其中,所述仓位更改请求包括仓位变更命令;/n根据所述仓位变更命令更改原数据,并将更改后的所述原数据发送至写入数据库;/n根据所述仓位变更命令生成变更消息,并将所述变更消息发送至查询数据库。/n

【技术特征摘要】
1.一种仓位数据管理方法,其特征在于,所述方法包括:
获取用户输入的仓位更改请求;其中,所述仓位更改请求包括仓位变更命令;
根据所述仓位变更命令更改原数据,并将更改后的所述原数据发送至写入数据库;
根据所述仓位变更命令生成变更消息,并将所述变更消息发送至查询数据库。


2.如权利要求1所述的方法,其特征在于,
所述仓位更改请求标记有用户ID,所述仓位变更命令、所述原数据、所述写入数据库、所述变更消息以及所述查询数据库均存储于同一处理平台,所述用户ID和所述处理平台相对应。


3.如权利要求1所述的方法,其特征在于,所述原数据标记有第一时间信息,所述变更消息标记有第二时间信息。


4.如权利要求3所述的方法,其特征在于,所述方法还包括:
获取用户输入的数据查询请求,其中,所述数据查询请求包括数据查询命令,所述数据查询命令标记有第三时间信息;
根据所述第三时间信息和所述第一时间信息之间的关系,从所述写入数据库获取与所述数据查询命令相对应的所述原数据;
根据所述第三时间信息和所述第二时间信息之间的关系,从所述查询数据库获取与所述数据查询命令相对应的所述变更消息;
根据所述变更消息更改所述原数据,得到查询数据。


5.如权利要求4所述的方法,其特征在于,
根据所述第三时间信息和所述第一时间信息之间的关系,从所述写入数据库获取与所述数据查询命令相对应的所述原数据,包括:
如果所述第三时间信息和所述第一时间信息相同,则将写入数据库中与所述第一时间信息相对应的所述原数据作为与所述数据查询命令相对应的所述原数据;
根据所述第三时间信息和所述第二时间信息之间的关系,从所述查询数据库获取与所述数据查询命令相对应的所述变更消息,包括:
如果所述第三时间信息和所述第二时间信息相同,则将所述查询数据库与所述第二时间信息相对应的所述变更消息,作为与所述数据查询命令相对应的所述变更消息。


6.一种仓位数据管理装置,其特征在于,所述装置包括:
第一请求获取单元,用于获取用户输入的仓位更改请求;其中,所述仓位更改请求包括仓位变更命令;
第一更改单元,用于根据所述仓位变更命令更改原数据,并将更改后的所述原数据发送至写入数据库;
消息生成单元,用于根据所述仓位变更命令生成变更消息,并将所述变更消息发送至查询数据库。


7.根据权利要求6所述的装置,其特征在于,所述原数据标...

【专利技术属性】
技术研发人员:曾昌强
申请(专利权)人:成都库珀区块链科技有限公司
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1