[发明专利]消息投递的管理方法、服务器和系统有效
申请号: | 201210227988.6 | 申请日: | 2012-07-02 |
公开(公告)号: | CN103532822A | 公开(公告)日: | 2014-01-22 |
发明(设计)人: | 刘玎 | 申请(专利权)人: | 北京神州泰岳软件股份有限公司 |
主分类号: | H04L12/58 | 分类号: | H04L12/58 |
代理公司: | 北京市隆安律师事务所 11323 | 代理人: | 权鲜枝 |
地址: | 100089 北京市海淀区万*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 消息 投递 管理 方法 服务器 系统 | ||
技术领域
本发明涉及通信技术领域,特别涉及一种消息投递的管理方法、服务器和系统。
背景技术
在当今的互联网时代,各种类型的数据通信系统,如即时通信(Instant Messaging,IM)系统,扮演着一个极为重要的角色,而通讯能力无疑是系统最为重要的功能。在通讯这个环节中,最为重要的无疑是消息的质量。在评估消息的质量时主要考虑两个方面,一个是消息投递的时间,另一个是消息投递的达到率。
所谓消息投递的达到率,就是指对于发送方发给接收方的消息,投递成功的消息总数与总投递消息数的比率。这个到达率往往是IM系统的关键核心指标,它决定着IM系统的可用性。而IM系统对消息的投递的原则主要为:对消息是否送达要可感知。
目前很多IM系统是基于传输控制协议(Transmission Control Protocol,TCP)和协议栈共同实现消息的投递的。由于一个庞大的IM系统,消息量是极其庞大的,所以现有方案为服务器设定一个消息超时时间,在这个超时时间内,服务器将来自发送方的消息缓存,若在消息超时时间内收到了接收方成功接收到消息的确认,则认为消息投递成功,并在缓存中清理该消息,若在消息超时时间内没有收到接收方对该消息的确认,则认为消息超时,投递失败。
上述现有的IM消息投递方案至少具有如下缺陷:
目前所设置的消息超时时间的数值多为经验值,而若该数值设置大了,会导致服务器的内存压力较大,若该数值设置小了,接收方的确认消息无法在消息超时时间内到达服务器,又会导致很多成功投递的消息被误认为失败,导致服务器对消息是否送达的感知上出现判断错误,对消息质量造成影响。
发明内容
本发明实施例提供了一种消息投递的管理方法、服务器和系统,以解决现有方案无法合理设置消息超时时间而影响消息质量的问题。
为达到上述目的,本发明实施例采用了如下技术方案:
本发明实施例提供了一种消息投递的管理方法,所述方法包括:
根据消息的投递次序,对发送设备通过传输控制协议TCP连接所投递的消息进行存储,所述消息包括第一消息;
在接收到接收设备所返回的对所述第一消息的应答时,在所存储的消息中查找投递次序在所述第一消息的投递次序之前的消息,确认所查找到的消息和所述第一消息投递成功,并从所存储的消息中移除所述所查找到的消息和第一消息。
本发明实施例还提供了一种服务器,所述服务器包括消息投递的管理装置,所述消息投递的管理装置包括:
存储单元,用于根据消息的投递次序,对发送设备通过传输控制协议TCP连接所投递的消息进行存储,所述消息包括第一消息;
投递管理单元,用于在接收到接收设备所返回的对所述第一消息的应答时,在所存储的消息中查找投递次序在所述第一消息的投递次序之前的消息,确认所查找到的消息和所述第一消息投递成功,并从所存储的消息中移除所述所查找到的消息和第一消息。
本发明实施例还提供了一种消息投递系统,所述系统包括第二服务器以及上述的第一服务器,
所述第一服务器,当接收到接收设备的注销请求或者监测到发送设备与接收设备之间的TCP连接出现异常时,确认相应消息管理队列中当前仍存在的消息投递失败,将所述确认为投递失败的消息上报并存储至第二服务器;
所述第二服务器,当存在确认为投递失败的消息时,判断与接收设备之间是否存在有效TCP连接,若是,将所述投递失败的消息通过所述有效TCP连接以在线消息的方式发送给接收设备,若否,在所设置的重连等待时间段内监测接收设备的连接状态,当监测到与接收设备之间存在有效TCP连接时,将所述投递失败的消息通过所述监测到的有效TCP连接发送给接收设备,当未监测到与接收设备之间存在有效TCP连接时,将所述投递失败的消息以短信方式或者离线消息的方式发送给接收设备。
本发明实施例的有益效果是:
本发明实施例利用TCP数据传输机制的特点,通过在收到接收设备对一个消息的应答时,确认该消息以及在该消息投递次序之前的消息都投递成功并移除这些消息的技术手段,达到了降低服务器的内存压力、准确感知消息是否送达的技术效果,从而提高了消息的质量。
附图说明
图1为本发明实施例一提供的一种消息投递的管理方法流程图;
图2为本发明实施例二提供的一种消息投递的管理方法流程图;
图3为本发明实施例三提供的一种服务器的结构示意图;
图4为本发明实施例四提供的一种消息投递系统结构示意图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京神州泰岳软件股份有限公司,未经北京神州泰岳软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210227988.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:复杂结构井减阻降扭复合钻井方法
- 下一篇:野外用自发热包装袋