一种消息队列存储转发方法及装置转让专利

申请号 : CN201310407675.3

文献号 : CN103475569A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 赵东伟

申请人 : 北京思特奇信息技术股份有限公司

摘要 :

本发明涉及一种消息队列存储转发方法及装置,包括以下步骤:请求端向操作系统发送请求信息,操作系统接收请求信息并将请求信息存储于双向链表中;操作系统将请求信息在双向链表中的存储位置存储在请求信息的消息头中;操作系统将请求信息发送给服务端,服务端保存请求信息的消息头,服务端解析请求信息,并根据解析后的请求信息生成响应信息;服务端将请求信息的消息头存储于所述响应信息的消息头中,将响应信息发送给操作系统;操作系统接收响应信息,根据响应信息的消息头得到请求信息的存储位置,从双向链表中获取请求信息并根据请求信息得到请求端的设备信息,将响应信息发送给请求端,将请求信息从双向链表中删除。本发明能够允许消息队列在操作系统允许的范围内动态增减。

权利要求 :

1.一种消息队列存储转发方法,其特征在于,包括以下步骤:

步骤1:请求端向操作系统发送请求信息,所述请求信息中包含请求端的设备信息,操作系统接收请求信息并将请求信息存储于双向链表中;

步骤2:操作系统将请求信息在双向链表中的存储位置存储在请求信息的消息头中;

步骤3:操作系统将请求信息发送给服务端,服务端保存请求信息的消息头,服务端解析请求信息,并根据解析后的请求信息生成响应信息;

步骤4:服务端将请求信息的消息头存储于所述响应信息的消息头中,将响应信息发送给操作系统;

步骤5:操作系统接收响应信息,根据响应信息的消息头得到请求信息的存储位置,从双向链表中获取请求信息并根据请求信息得到请求端的设备信息,将响应信息发送给请求端,并将请求信息从双向链表中删除。

2.根据权利要求1所述的消息队列存储转发方法,其特征在于:所述步骤2中请求信息的存储位置存储于消息头中的位置字段。

3.根据权利要求2所述的消息队列存储转发方法,其特征在于:所述步骤4具体为,服务端将请求信息的消息头的位置字段中的内容保存于响应信息的消息头的位置字段中。

4.一种消息队列存储转发装置,其特征在于:包括请求端(1),操作系统(2)和服务端(3);

所述请求端(1),用于向操作系统(2)发送请求信息,所述请求信息中包含请求端的设备信息;

所述操作系统(2),用于接收请求端(1)发送的请求信息并将请求信息存储于双向链表中,将请求信息的在双向链表的存储位置存储在请求信息的消息头中,操作系统将请求信息发送给服务端(3),接收响应信息,根据响应信息的消息头得到请求信息的存储位置,从双向链表中获取请求信息并根据请求信息得到请求端的设备信息,将响应信息发送给请求端,并将请求信息从双向链表中删除;

所述服务端(3),用于接收操作系统(2)发送的请求信息,保存请求信息的消息头,解析请求信息,并根据解析后的请求信息生成响应信息,将请求信息的消息头存储于所述响应信息的消息头中,将响应信息发送给操作系统。

5.根据权利要求4所述的消息队列存储转发装置,其特征在于:所述请求信息的存储位置具体存储于消息头中的位置字段。

6.根据权利要求4所述的消息队列存储转发装置,其特征在于:所述服务端将请求信息的消息头的位置字段中的内容,保存于响应信息的消息头的位置字段中。

说明书 :

一种消息队列存储转发方法及装置

技术领域

[0001] 本发明涉及一种数据通讯系统,特别涉及一种消息队列存储转发方法及装置。

背景技术

[0002] 双向数据链表:链表的一种形式,通过定义特殊的链表元素,来达到链表的查找、删除、添加的数据O(1)复杂度。
[0003] 存储转发:系统接收消息后首先存储到存储介质中,然后根据消息的目的地不同,再将消息发送给不同的其他系统。要求存储介质具备一定的伸缩性来适应不同的消息规模,同时要求消息的定位、插入、删除的效率尽可能的高。

发明内容

[0004] 本发明所要解决的技术问题是提供一种实现消息存储转发的高效率、高动态的消息队列存储转发方法及装置。
[0005] 本发明解决上述技术问题的技术方案如下:一种消息队列存储转发方法,包括以下步骤:
[0006] 步骤1:请求端向操作系统发送请求信息,所述请求信息中包含请求端的设备信息,操作系统接收请求信息并将请求信息存储于双向链表中;
[0007] 步骤2:操作系统将请求信息在双向链表中的存储位置存储在请求信息的消息头中;
[0008] 步骤3:操作系统将请求信息发送给服务端,服务端保存请求信息的消息头,服务端解析请求信息,并根据解析后的请求信息生成响应信息;
[0009] 步骤4:服务端将请求信息的消息头存储于所述响应信息的消息头中,将响应信息发送给操作系统;
[0010] 步骤5:操作系统接收响应信息,根据响应信息的消息头得到请求信息的存储位置,从双向链表中获取请求信息并根据请求信息得到请求端的设备信息,将响应信息发送给请求端,并将请求信息从双向链表中删除。
[0011] 本发明的有益效果是:本发明基于特殊的双向链表元素的设计,来达到存储转发系统的高效率,并且能够动态适应消息的长度,从而实现效率和规模较大的消息存储转发系统。
[0012] 在上述技术方案的基础上,本发明还可以做如下改进。
[0013] 进一步,所述步骤2中请求信息的存储位置存储于消息头中的位置字段。
[0014] 进一步,所述步骤4具体为,服务端将请求信息的消息头的位置字段中的内容保存于响应信息的消息头的位置字段中。
[0015] 一种消息队列存储转发装置,包括请求端,操作系统和服务端;
[0016] 所述请求端,用于向操作系统发送请求信息,所述请求信息中包含请求端的设备信息;
[0017] 所述操作系统,用于接收请求端发送的请求信息并将请求信息存储于双向链表中,将请求信息的在双向链表的存储位置存储在请求信息的消息头中,操作系统将请求信息发送给服务端,接收响应信息,根据响应信息的消息头得到请求信息的存储位置,从双向链表中获取请求信息并根据请求信息得到请求端的设备信息,将响应信息发送给请求端,并将请求信息从双向链表中删除;
[0018] 所述服务端,用于接收操作系统发送的请求信息,保存请求信息的消息头,解析请求信息,并根据解析后的请求信息生成响应信息,将请求信息的消息头存储于所述响应信息的消息头中,将响应信息发送给操作系统。
[0019] 进一步,所述请求信息的存储位置具体存储于消息头中的位置字段。
[0020] 进一步,所述服务端将请求信息的消息头的位置字段中的内容,保存于响应信息的消息头的位置字段中。

附图说明

[0021] 图1为本发明方法步骤流程图;
[0022] 图2为本发明装置结构图。
[0023] 附图中,各标号所代表的部件列表如下:
[0024] 1、请求端,2、操作系统,3、服务端。

具体实施方式

[0025] 以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
[0026] 如图1所示,为本发明方法步骤流程图,图2为本发明装置结构图。
[0027] 实施例1
[0028] 一种消息队列存储转发方法,包括以下步骤:
[0029] 步骤1:请求端向操作系统发送请求信息,所述请求信息中包含请求端的设备信息,操作系统接收请求信息并将请求信息存储于双向链表中;
[0030] 步骤2:操作系统将请求信息在双向链表中的存储位置存储在请求信息的消息头中;
[0031] 步骤3:操作系统将请求信息发送给服务端,服务端保存请求信息的消息头,服务端解析请求信息,并根据解析后的请求信息生成响应信息;
[0032] 步骤4:服务端将请求信息的消息头存储于所述响应信息的消息头中,将响应信息发送给操作系统;
[0033] 步骤5:操作系统接收响应信息,根据响应信息的消息头得到请求信息的存储位置,从双向链表中获取请求信息并根据请求信息得到请求端的设备信息,将响应信息发送给请求端,并将请求信息从双向链表中删除。
[0034] 所述步骤2中请求信息的存储位置存储于消息头中的位置字段。
[0035] 所述步骤4具体为,服务端将请求信息的消息头的位置字段中的内容保存于响应信息的消息头的位置字段中。
[0036] 一种消息队列存储转发装置,包括请求端1,操作系统2和服务端3;
[0037] 所述请求端1,用于向操作系统2发送请求信息,所述请求信息中包含请求端的设备信息;
[0038] 所述操作系统2,用于接收请求端1发送的请求信息并将请求信息存储于双向链表中,将请求信息的在双向链表的存储位置存储在请求信息的消息头中,操作系统将请求信息发送给服务端3,接收响应信息,根据响应信息的消息头得到请求信息的存储位置,从双向链表中获取请求信息并根据请求信息得到请求端的设备信息,将响应信息发送给请求端,并将请求信息从双向链表中删除;
[0039] 所述服务端3,用于接收操作系统2发送的请求信息,保存请求信息的消息头,解析请求信息,并根据解析后的请求信息生成响应信息,将请求信息的消息头存储于所述响应信息的消息头中,将响应信息发送给操作系统。
[0040] 所述请求信息的存储位置具体存储于消息头中的位置字段。
[0041] 所述服务端将请求信息的消息头的位置字段中的内容,保存于响应信息的消息头的位置字段中。
[0042] 以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。