内存数据库及其数据处理方法、服务器平台技术

技术编号:33338011 阅读:29 留言:0更新日期:2022-05-08 09:21
本申请提供了一种内存数据库及其数据处理方法、服务器平台。数据处理方法包括:消息队列组件在接收到客户端发送的数据访问请求时,通过数据访问接口访问并处理业务数据和消息队列中的消息数据,并向客户端发送响应信息;消息队列组件设置于内存数据库中。本申请通过在内存数据库中嵌入消息队列组件,可实现对业务数据和消息数据的同步访问和处理,在服务端实现业务处理功能,相对于现有的业务数据和消息数据相互分离的存储、访问和处理,本申请实施例的方案不仅提高数据访问的性能,提高数据吞吐率,减小延迟,相比于内存数据库之外的单独的消息队列部署方式还可节省成本。独的消息队列部署方式还可节省成本。独的消息队列部署方式还可节省成本。

【技术实现步骤摘要】
内存数据库及其数据处理方法、服务器平台


[0001]本申请涉及网络通信
,具体而言,本申请涉及一种内存数据库及其数据处理方法、服务器平台。

技术介绍

[0002]当前的通信计费系统中,存在大量通过消息队列进行数据分发和调度的业务场景,其中既有需要实时处理海量数据的场景,也有需要支持高可用和分布式部署的需求。而现有消息队列方案受方案本身的各种限制,多数难以满足计费系统的处理性能要求,如数据吞吐率和延迟方面。

技术实现思路

[0003]本申请针对现有方式的缺点,提出一种内存数据库及其数据处理方法、服务器平台,用以解决现有技术存在的数据处理性能低的技术问题。
[0004]第一方面,本申请实施例提供了一种数据处理方法,包括:
[0005]消息队列组件在接收到客户端发送的数据访问请求时,通过数据访问接口访问并处理业务数据和消息队列中的消息数据,并向客户端发送响应信息;消息队列组件设置于内存数据库中。
[0006]第二方面,本申请实施例提供了一种内存数据库,包括:消息队列组件和数据访问接口;
[0007]消息队列组件用于:在接收到客户端发送的数据访问请求时,通过数据访问接口访问并处理业务数据和消息队列中的消息数据,并向客户端发送响应信息。
[0008]第三方面,本申请实施例提供了一种服务器平台,包括:至少两个内存数据库;各内存数据库节点呈分布式通信连接。
[0009]本申请实施例提供的技术方案,至少具有如下有益效果:
[0010]本申请实施例的技术方案通过在内存数据库中嵌入消息队列组件,可实现对业务数据和消息数据的同步访问和处理,在服务端实现业务处理功能,相对于现有的业务数据和消息数据相互分离的存储、访问和处理,本申请实施例的方案不仅提高数据访问的性能,提高数据吞吐率,减小延迟,相比于内存数据库之外的单独的消息队列部署方式还可节省成本。
[0011]本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
[0012]本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
[0013]图1为本申请实施例提供的一种内存数据库也即服务端的结构框架示意图;
[0014]图2为本申请实施例中客户端和服务端的通信原理示意图;
[0015]图3为本申请实施例提供的一种数据处理方法的部分流程示意图;
[0016]图4为本申请实施例提供的另一种数据处理方法的部分流程示意图;
[0017]图5为本申请实施例中消息数据的处理状态示意图;
[0018]图6为本申请实施例提供的一种服务器平台的结构框架示意图;
[0019]图7为本申请实施例中客户端查询路由信息的原理示意图。
具体实施方式
[0020]下面详细描述本申请,本申请的实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的部件或具有相同或类似功能的部件。此外,如果已知技术的详细描述对于示出的本申请的特征是不必要的,则将其省略。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
[0021]本
技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
[0022]本
技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
[0023]当前的通信计费系统的应用场景,对实时处理海量数据、支持高可用和分布式部署以及重复数据的剔重均提出了较高的要求。为了应对这些快速发展的需求和场景,本公司提出并开发了一种基于内存数据库的高性能分布式队列系统,并且在此基础上按业务需求实现了队列数据的剔重功能。
[0024]本申请的专利技术人进行研究发现现有的消息队列方案具有如下缺点:首先,在性能方面,多数现有方案难以满足计费系统的处理性能要求,如吞吐率和延迟方面;其次,在分布式部署及高可用方面,有些现有方案支持不完善,有些现有方案部署和应用过于复杂,依赖过多;再次,在数据剔重方面,没有任何现有方案可以满足需求。
[0025]本申请提供的内存数据库及其数据处理方法、服务器平台,旨在解决现有技术的如上技术问题。
[0026]下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。
[0027]本申请实施例提供了一种内存数据库(作为服务端),如图1所示,该内存数据库包括:消息队列组件和数据访问接口。
[0028]消息队列组件用于:在接收到客户端(集成有业务代码)发送的数据访问请求时,
通过数据访问接口访问并处理业务数据和消息队列中的消息数据,并向客户端发送响应信息。业务数据和消息队列均存储于内存数据库中。
[0029]本申请实施例提供的内存数据库可以是AIMDB(AsiaInfo in Memory Database,亚信科技有限公司开发的内存数据库产品)。
[0030]本申请实施例中的消息队列组件可部署在内存数据库的业务数据处理模块(嵌入特定业务逻辑的模块),用于处理相应的业务请求。
[0031]可选地,本申请实施例中的消息队列组件还用于:在接收到客户端发送的数据写入请求时,通过数据访问接口查询消息队列中是否已存在数据写入请求所请求写入的消息数据;在查询到消息队列中已存在数据写入请求所请求写入的消息数据时,向客户端发送消息剔重的响应信息;在查询到消息队列中不存在数据写入请求所请求写入的消息数据时,向消息队列中写入该消息数据并反馈客户端。
[0032]可选地,本申请实施例中的消息队列组件还用于:在向客户端发送消息剔重的响应信息之前,确定消息队列中存在的数据写入请求所请求写入的消息数据的处理状态;在确定消息队列中存在的数据写入请求所请求写入的消息数据处于初始状态或发起处理状态时,向客户端发送消息剔重的响应信息;在确定消息队列中存在的数据写入请求所请求写入的消息数据不处于初始状态和发起处理状态时,向消息队列中写入该消息数据并反馈客户端。
[0033]可选地,消息队本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:消息队列组件在接收到客户端发送的数据访问请求时,通过数据访问接口访问并处理业务数据和消息队列中的消息数据,并向所述客户端发送响应信息;所述消息队列组件设置于内存数据库中。2.根据权利要求1所述的数据处理方法,其特征在于,还包括:所述消息队列组件在接收到所述客户端发送的数据写入请求时,通过所述数据访问接口查询所述消息队列中是否已存在所述数据写入请求所请求写入的消息数据;在查询到所述消息队列数据中已存在所述数据写入请求所请求写入的消息数据时,所述消息队列组件向所述客户端发送消息剔重的响应信息;在查询到所述消息队列数据中不存在所述数据写入请求所请求写入的消息数据时,所述消息队列组件向所述消息队列中写入该消息数据并反馈所述客户端。3.根据权利要求2所述的数据处理方法,其特征在于,所述向所述客户端发送消息剔重的响应信息之前,还包括:所述消息队列组件确定所述消息队列中存在的所述数据写入请求所请求写入的数据的消息处理状态;在确定所述消息队列中存在的所述数据写入请求所请求写入的消息数据不处于初始状态和发起处理状态时,所述消息队列组件向所述消息队列中写入该消息数据并反馈所述客户端;以及,所述向所述客户端发送消息剔重的响应信息,包括:在确定所述消息队列中存在的所述数据写入请求所请求写入的消息数据处于初始状态或发起处理状态时,所述消息队列组件向所述客户端发送消息剔重的响应信息。4.一种内存数据库,其特征在于,包括:消息队列组件和数据访问接口;所述消息队列组件用于:在接收到客户端发送的数据访问请求时,通过所述数据访问接口访问并处理业务数据和消息队列中的消息数据,并向所述客户端发送响应信息。5.根据权利要求4所述的内存数据库,其特征在于,所述消息队列组件还用于:在接收到所述客户端发送的数据写入请求时,通...

【专利技术属性】
技术研发人员:赵立铭刘坤朋陈云峰王静刘华金茅晓萍杨少帅
申请(专利权)人:亚信科技中国有限公司
类型:发明
国别省市:

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

1