[发明专利]一种发送、接收消息的方法及装置有效
申请号: | 201210585652.7 | 申请日: | 2012-12-28 |
公开(公告)号: | CN103078921A | 公开(公告)日: | 2013-05-01 |
发明(设计)人: | 陶金虎 | 申请(专利权)人: | TCL集团股份有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 深圳中一专利商标事务所 44237 | 代理人: | 张全文 |
地址: | 516001 广东省惠州市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 发送 接收 消息 方法 装置 | ||
技术领域
本发明属于通信技术领域,尤其涉及一种发送、接收消息的方法及装置。
背景技术
在云计算技术领域,云计算服务集群之间以及云计算服务集群与客户端之间进行通信,由于不同的网络平台,不同的业务和不同的协议导致信令间需要转换,开发人员需要考虑底层信令和具体业务,导致大量重复开发,代码效率不高,消息效率不高等。因此现有技术存在的问题是,在云计算领域,由于不同的网络平台,不同业务和不同的协议导致的数据传输效率不高和系统稳定性、可靠性不高的问题。
发明内容
本发明实施例的目的在于提供一种发送、接收消息的方法及装置,以解决现有技术在云计算领域,由于不同的网络平台,不同业务和不同的协议导致的数据传输效率不高和系统稳定性、可靠性不高的问题。
本发明的实施例是这样实现的,一种发送消息的方法,所述方法包括以下步骤:
为消息包申请内存缓冲区;
在所述内存缓冲区内将消息类型、消息标识和消息长度封装成消息头;
将消息头、消息内容包个数和消息内容包数组封装成消息包;
消息分发线程扫描内存缓冲区,搜索已经封装完毕的消息包;
将所述已经封装完毕的消息包分发到消息发送线程池的发送线程;
根据预设的周期,发送线程把消息包发送到网络上。
本发明的实施例是这样实现的,一种接收消息的方法,所述方法包括以下步骤:
在套接字socket端口接收到消息包,所述消息包携带的消息头包含消息长度信息;
根据socket端口信息,在套接字散列socket hash表中查询所述socket端口的消息完成队列句柄;
根据所述消息完成队列句柄,判断消息包是否接收完成;
当所述消息包接收完毕,处理所述消息包。
本发明的实施例的另一目的在于提供一种发送消息的装置,所述装置包括:
申请单元,用于为消息包申请内存缓冲区;
第一封装单元,用于在所述内存缓冲区内将消息类型、消息标识和消息长度封装成消息头;
第二封装单元,用于将消息头、消息内容包个数和消息内容包数组封装成消息包;
扫描单元,用于消息分发线程扫描内存缓冲区,搜索已经封装完毕的消息包;
第一发送单元,用于将所述已经封装完毕的消息包分发到消息发送线程池的发送线程;
第二发送单元,用于根据预设的周期,把消息包发送到网络上。
本发明的实施例的另一目的在于提供一种接收消息的装置,所述装置包括:
接收单元,用于在套接字socket端口接收到消息包,所述消息包携带的消息头包含消息长度信息;
查询单元,用于根据socket端口信息,在套接字散列socket hash表中查询所述socket端口的消息完成队列句柄;
判断单元,用于根据所述消息完成队列句柄,判断消息包是否接收完成;
处理单元,用于当所述消息包接收完毕,处理所述消息包。
本发明实施例提供一种发送、接收消息的方法及装置,通过对数据包按特定格式封装,实现了业务和网络通讯通信分离,解决了现有技术在云计算领域,由于不同的网络平台,不同业务和不同的协议导致的数据传输效率不高和系统稳定性、可靠性不高的问题。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明第一实施例提供的消息头的组成结构图;
图2是本发明第二实施例提供的消息包的组成结构图;
图3是本发明图2中消息包在内存缓冲区的组成结构图;
图4是本发明第三实施例提供的发送消息的方法的场景示意图;
图5是本发明图4中发送消息的方法的实现流程图;
图6是本发明第四实施例提供的接收消息的方法的实现流程图;
图7是本发明第五实施例提供的发送消息的装置的模块结构图;
图8是本发明第六实施例提供的接收消息的装置的模块结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于TCL集团股份有限公司,未经TCL集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210585652.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种高危物品管控系统
- 下一篇:一种具有转换功能的复合智能卡