[发明专利]消息处理方法及服务器有效
申请号: | 201280003447.3 | 申请日: | 2012-11-20 |
公开(公告)号: | CN103370917A | 公开(公告)日: | 2013-10-23 |
发明(设计)人: | 李亿 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 刘芳 |
地址: | 518129 中国广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 消息 处理 方法 服务器 | ||
技术领域
本发明实施例涉及互联网(Intemet Technology,简称IT)技术,尤其涉及一种消息处理方法及服务器。
背景技术
IT系统中通常包含两类通信实体,一类为客户端,一类为服务器,服务器通常为多个客户端提供服务,客户端和服务器之间通过收发消息建立连接。
通常情况下,客户端不定时地向服务器发送消息,以使得服务器根据该消息执行相应的操作;相应地,服务器在接收客户端的消息后,可以对消息内容进行处理,完成对消息内容的处理后再将处理结果返回给相应的客户端。当大量客户端同时向服务器发送消息时,服务器将同时对这些客户端的消息一一处理,导致服务器的开销很大,从而影响服务器的消息处理效率,甚至可能出现无法接受新客户端的消息的问题。
发明内容
本发明实施例提供一种消息处理方法及服务器,以解决服务器在处理大量客户端的消息时开销较大的问题。
本发明实施例第一方面提供一种消息处理方法,包括:
服务器接收客户端发送的第一请求消息;
所述服务器根据所述第一请求消息的属性信息,确定所述第一请求消息对应的第一操作事件;
所述服务器确定自身是否已经开始执行所述第一操作事件,若已经开始执行所述第一操作事件,将所述第一请求消息缓存在第一缓存消息队列,所述第一缓存消息队列用于缓存不同客户端发送的不同请求消息,所述服务器针对所述第一缓存消息队列中的不同客户端发送的不同请求消息需要执行相同的所述第一操作事件;
当所述服务器执行完毕所述第一操作事件,所述服务器向所述第一缓存消息队列中的不同请求消息对应的每个客户端发送所述第一操作事件的响应消息。
在第一方面的第一种可能的实现方式中,所述服务器根据所述第一请求消息的属性信息,确定所述第一请求消息对应的第一操作事件,包括:
所述服务器根据所述第一请求消息的操作对象、操作内容或操作结果中的任意之一或其任意组合,确定所述第一请求消息所对应的第一操作事件。
在第一方面的第二种可能的实现方式中,若所述服务器确定自身未开始执行所述第一操作事件,所述方法还包括:
启动执行所述第一操作事件,并创建对应于所述第一操作事件的第一缓存消息队列。
结合第一方面、第一方面的第一种可能的实现方式、第一方面的第二种可能的实现方式中任一可能的实现方式,在第三种可能的实现方式中,所述服务器将所述第一请求消息缓存在第一缓存消息队列之前,还包括:
所述服务器确定所述第一操作事件是否是预置的合并处理事件,如果是,执行所述将所述第一请求消息缓存在第一缓存消息队列的步骤;如果否,所述服务器针对所述第一请求消息启动执行所述第一操作事件。
结合第三种可能的实现方式,在第四种可能的实现方式中,所述预置的合并处理事件包括但不限于增加服务器CPU处理时间和效率的操作处理事件。
结合第四种可能的实现方式,在第五种可能的实现方式中,所述增加服务器CPU处理时间和效率的操作处理事件包括下述操作事件中的至少一种:
增加操作、创建操作、删除操作、修改操作、查询操作、重启操作、备份操作、启动操作、停止操作。
结合第一方面、第一方面的第一种可能的实现方式、第一方面的第二种可能的实现方式、第三种可能的实现方式中任一可能的实现方式,在第六中可能的实现方式中,所述向所述第一缓存消息队列中的所有请求消息对应的所有客户端发送所述第一操作事件的响应消息之后,还包括:
删除所述第一缓存消息队列。
本发明实施例第二方面提供一种服务器,包括:
接收模块,用于接收客户端发送的第一请求消息;
确定模块,用于根据所述第一请求消息的属性信息,确定所述第一请求消息对应的第一操作事件;
处理模块,用于确定自身是否已经开始执行所述第一操作事件,若已经开始执行所述第一操作事件,将所述第一请求消息缓存在第一缓存消息队列,所述第一缓存消息队列用于缓存不同客户端发送的不同请求消息,针对所述第一缓存消息队列中的不同客户端发送的不同请求消息需要执行相同的所述第一操作事件;
发送模块,用于当执行完毕所述第一操作事件时,向所述第一缓存消息队列中的不同请求消息对应的每个客户端发送所述第一操作事件的响应消息。
在第二方面的第一种可能的实现方式中,所述确定模块,具体用于根据所述第一请求消息的操作对象、操作内容或操作结果中的任意之一或其任意组合,确定所述第一请求消息所对应的第一操作事件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201280003447.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:LED显示屏的线路连接结构
- 下一篇:空气二次电池