一种虚拟货币体系的负载容灾系统和方法技术方案

技术编号:20074712 阅读:30 留言:0更新日期:2019-01-15 00:32
本发明专利技术公开了一种虚拟货币体系的负载容灾系统和方法,其中该系统包括负载均衡模块,用于将若干个携带用户ID的用户请求分配给若干个哈希路由器;哈希路由器,用于对负载均衡模块分配的用户请求的用户ID执行一致性哈希运算,并根据一致性哈希运算的结果,将负载均衡模块分配的用户请求分配到若干个业务节点中;业务节点,用于根据哈希路由器分配的用户请求进行数据处理;每个业务节点均设有一个第一数据库;第二数据库,用于同步备份所有第一数据库中的数据。本发明专利技术的系统架构和方法流程使得本发明专利技术具有较强的负载拓展性和较强的容灾能力,本发明专利技术可以广泛应用于虚拟货币领域。

A Load Disaster Recovery System for Virtual Monetary System

The invention discloses a load disaster tolerance system and a system for virtual currency system, in which a load balancing module is included to distribute several user requests with user ID to several hash routers, and a hash router is used to perform a consistent hash operation on the user ID of the user requests allocated by the load balancing module, and according to the results of the consistent hash operation, User requests allocated by load balancing module are allocated to several service nodes; service nodes are used to process data according to user requests allocated by hash routers; each service node has a first database; and the second database is used to synchronously backup all data in the first database. The system architecture and method flow of the invention make the invention have strong load expansion and disaster tolerance ability, and the invention can be widely applied in the field of virtual currency.

【技术实现步骤摘要】
一种虚拟货币体系的负载容灾系统和方法
本专利技术涉及虚拟货币领域,尤其是一种虚拟货币体系的负载容灾系统和方法。
技术介绍
互联网飞速发展,使用互联网的人群与日俱增,在网络虚拟世界里,各种系统或应用、游戏等都逃不过使用一套虚拟货币系统,即使是最简单的数字减减加加,都必须保证货币系统的安全与稳定,这关乎整个虚拟生态乃至互联网公司的存亡。虚拟货币具有两个特征:1、数据单元基数庞大,每一个用户会创建多种类型的虚拟货币,因而数据量会随着用户的增长成倍扩张。2、用户会对数据进行频繁的操作,实时地增删查改。因此并发负载能力和容灾能力就成了虚拟货币系统要解决的首要问题。为了应对日益增长的用户请求,市场需要一种负载能力拓展性强和容灾能力强的技术方案。
技术实现思路
为解决上述技术问题,本专利技术的目的在于:提供一种负载能力拓展性强和容灾能力强的虚拟货币体系的负载容灾系统和方法。本专利技术所采取的第一种技术方案是:一种虚拟货币体系的负载容灾系统,包括:负载均衡模块,用于将若干个携带用户ID的用户请求分配给若干个哈希路由器;哈希路由器,用于对负载均衡模块分配的用户请求的用户ID执行一致性哈希运算,并根据一致性哈希运算的结果,将负载均衡模块分配的用户请求分配到若干个业务节点中,其中,一个用户ID对应的所有用户请求被分配到同一业务节点;业务节点,用于根据哈希路由器分配的用户请求进行数据处理;每个业务节点均设有一个第一数据库;所述数据处理包括在与业务节点对应的第一数据库中增加数据、删除数据、修改数据和/或查找数据;第二数据库,用于同步备份所有第一数据库中的数据;进一步,所述哈希路由器包括:哈希运算单元,用于对负载均衡模块分配的用户请求的用户ID执行一致性哈希运算,得到用户ID对应的第一键值;查找分配单元,用于查找与用户ID对应的第一键值最接近的第二键值,并将该用户ID对应的用户请求分配到所述最接近的第二键值所对应的业务节点中,所述第二键值为业务节点的预设键值。进一步,所述负载均衡模块具体用于将若干个携带用户ID的用户请求随机地分配给若干个哈希路由器;或者,所述负载均衡模块具体用于根据各哈希路由器当前的负载量,将若干个携带用户ID的用户请求分配给若干个哈希路由器;或者,所述负载均衡模块具体用于将若干个携带用户ID的用户请求平均地分配给若干个哈希路由器。进一步,所述业务节点和与之对应的第一数据库部署在同一局域网内或者部署在同一计算机内。进一步,所述第二数据库部署在云端。本专利技术所采取的第二种技术方案是:一种虚拟货币体系的负载容灾方法,包括以下步骤:通过负载均衡模块将若干个携带用户ID的用户请求分配给若干个哈希路由器;通过哈希路由器对负载均衡模块分配的用户请求的用户ID执行一致性哈希运算,并根据一致性哈希运算的结果,将负载均衡模块分配的用户请求分配到若干个业务节点中;其中,一个用户ID对应的所有用户请求被分配到同一业务节点;通过业务节点根据哈希路由器分配的用户请求进行数据处理;每个业务节点均设有一个第一数据库;所述数据处理包括在与业务节点对应的第一数据库中增加数据、删除数据、修改数据和/或查找数据;通过第二数据库同步备份所有第一数据库中的数据。进一步,所述一致性哈希运算的结果为一个第一键值,每个业务节点均设有一个第二键值;所述哈希路由器包括:哈希运算单元,用于对负载均衡模块分配的用户请求的用户ID执行一致性哈希运算,得到用户ID对应的第一键值;查找分配单元,用于查找与用户ID对应的第一键值最接近的第二键值,并将该用户ID对应的用户请求分配到所述最接近的第二键值所对应的业务节点中。进一步,所述通过负载均衡模块将若干个携带用户ID的用户请求分配给若干个哈希路由器的步骤具体为:通过负载均衡模块将若干个携带用户ID的用户请求随机地分配给若干个哈希路由器;或者,通过负载均衡模块根据各哈希路由器当前的负载量,将若干个携带用户ID的用户请求分配给若干个哈希路由器;或者,所述负载均衡模块将若干个携带用户ID的用户请求平均地分配给若干个哈希路由器。进一步,所述业务节点和与之对应的第一数据库部署在同一局域网内或者部署在同一计算机内。进一步,所述第二数据库部署在云端。本专利技术的有益效果是:本专利技术通过负载均衡模块将用户请求分配给若干个哈希路由器,再由哈希路由器采用一致性哈希运算对用户ID进行处理,以将同一ID的用户请求分配到同一业务节点进行处理,当某业务节点发生故障时,仅需要对故障节点的数据进行重新加载,而避免系统中有大量的数据迁移;同时,当个别第一数据库发生故障时,可以通过第二数据库进行恢复,避免了数据大量丢失,因此本专利技术具有较强的容灾能力;此外,本专利技术所采用的数据处理流程或系统架构,使得本专利技术在增加或者删减业务节点时,所影响的用户数据较小,便于本专利技术动态地拓展多个业务节点,因而本专利技术具有较强的负载能力拓展性。附图说明图1为本专利技术一种虚拟货币体系的负载容灾系统的模块框图;图2为本专利技术一种虚拟货币体系的负载容灾方法的流程图;图3为本专利技术一种具体实施例的虚拟货币体系的负载容灾方法的流程图。具体实施方式参照图1,一种虚拟货币体系的负载容灾系统,包括:负载均衡模块,用于将若干个携带用户ID的用户请求分配给若干个哈希路由器;哈希路由器,用于对负载均衡模块分配的用户请求的用户ID执行一致性哈希运算,并根据一致性哈希运算的结果,将负载均衡模块分配的用户请求分配到若干个业务节点中,其中,一个用户ID对应的所有用户请求被分配到同一业务节点;业务节点,用于根据哈希路由器分配的用户请求进行数据处理;每个业务节点均设有一个第一数据库;所述数据处理包括在与业务节点对应的第一数据库中增加数据、删除数据、修改数据和/或查找数据;第二数据库,用于同步备份所有第一数据库中的数据;所述负载均衡模块与哈希路由器通信连接,所述哈希路由器与业务节点通信连接,所述业务节点与第一数据库通信连接,所述第一数据库与第二数据库通信连接。进一步作为优选的实施方式,所述一致性哈希运算的结果为一个第一键值,每个业务节点均设有一个第二键值,通过哈希路由器查找与用户ID对应的第一键值最接近的第二键值,并将该用户ID对应的用户请求分配到所述最接近的第二键值所对应的业务节点中。进一步作为优选的实施方式,所述负载均衡模块具体用于将若干个携带用户ID的用户请求随机地分配给若干个哈希路由器;或者,所述负载均衡模块具体用于根据各哈希路由器当前的负载量,将若干个携带用户ID的用户请求分配给若干个哈希路由器;或者,所述负载均衡模块具体用于将若干个携带用户ID的用户请求平均地分配给若干个哈希路由器。进一步作为优选的实施方式,所述业务节点和与之对应的第一数据库部署在同一局域网内或者部署在同一计算机内。进一步作为优选的实施方式,所述第二数据库部署在云端。本专利技术所采取的第二种技术方案是:参照图2,一种虚拟货币体系的负载容灾方法,包括以下步骤:通过负载均衡模块将若干个携带用户ID的用户请求分配给若干个哈希路由器;通过哈希路由器对负载均衡模块分配的用户请求的用户ID执行一致性哈希运算,并根据一致性哈希运算的结果,将负载均衡模块分配的用户请求分配到若干个业务节点中;其中,一个用户ID对应的所有用户请求被分配到同一业务节点;通过业务节点根据哈希路由器分配本文档来自技高网...

【技术保护点】
1.一种虚拟货币体系的负载容灾系统,其特征在于,包括:负载均衡模块,用于将若干个携带用户ID的用户请求分配给若干个哈希路由器;哈希路由器,用于对负载均衡模块分配的用户请求的用户ID执行一致性哈希运算,并根据一致性哈希运算的结果,将负载均衡模块分配的用户请求分配到若干个业务节点中,其中,一个用户ID对应的所有用户请求被分配到同一业务节点;业务节点,用于根据哈希路由器分配的用户请求进行数据处理;每个业务节点均设有一个第一数据库;所述数据处理包括在与业务节点对应的第一数据库中增加数据、删除数据、修改数据和/或查找数据;第二数据库,用于同步备份所有第一数据库中的数据。

【技术特征摘要】
1.一种虚拟货币体系的负载容灾系统,其特征在于,包括:负载均衡模块,用于将若干个携带用户ID的用户请求分配给若干个哈希路由器;哈希路由器,用于对负载均衡模块分配的用户请求的用户ID执行一致性哈希运算,并根据一致性哈希运算的结果,将负载均衡模块分配的用户请求分配到若干个业务节点中,其中,一个用户ID对应的所有用户请求被分配到同一业务节点;业务节点,用于根据哈希路由器分配的用户请求进行数据处理;每个业务节点均设有一个第一数据库;所述数据处理包括在与业务节点对应的第一数据库中增加数据、删除数据、修改数据和/或查找数据;第二数据库,用于同步备份所有第一数据库中的数据。2.根据权利要求1所述的一种虚拟货币体系的负载容灾系统,其特征在于:所述哈希路由器包括:哈希运算单元,用于对负载均衡模块分配的用户请求的用户ID执行一致性哈希运算,得到用户ID对应的第一键值;查找分配单元,用于查找与用户ID对应的第一键值最接近的第二键值,并将该用户ID对应的用户请求分配到所述最接近的第二键值对应的业务节点中,所述第二键值为业务节点的预设键值。3.根据权利要求1所述的一种虚拟货币体系的负载容灾系统,其特征在于:所述负载均衡模块具体用于:将若干个携带用户ID的用户请求随机地分配给若干个哈希路由器;或者,根据各哈希路由器当前的负载量,将若干个携带用户ID的用户请求分配给若干个哈希路由器;或者,将若干个携带用户ID的用户请求平均地分配给若干个哈希路由器。4.根据权利要求1所述的一种虚拟货币体系的负载容灾系统,其特征在于:所述业务节点和与之对应的第一数据库部署在同一局域网内或者部署在同一计算机内。5.根据权利要求1-4任一项所述的一种虚拟货币体系的负载容灾系统,其特征在于:所述第二数据库部署在云端。6.一种虚拟货币体系的负载容灾方法,其特征在于:包括以下步骤:通过负载均衡模块将若干个携带用户ID的用户请求分配给若干个哈希路由器;通过哈希路由器...

【专利技术属性】
技术研发人员:黄镇
申请(专利权)人:无锡天脉聚源传媒科技有限公司
类型:发明
国别省市:江苏,32

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

1