[发明专利]消息通信的方法、服务器和系统在审
申请号: | 201410488025.0 | 申请日: | 2014-09-23 |
公开(公告)号: | CN105515936A | 公开(公告)日: | 2016-04-20 |
发明(设计)人: | 宋平波;杨翊平 | 申请(专利权)人: | 中国电信股份有限公司 |
主分类号: | H04L12/58 | 分类号: | H04L12/58 |
代理公司: | 中国国际贸易促进委员会专利商标事务所 11038 | 代理人: | 许蓓 |
地址: | 100033 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 消息 通信 方法 服务器 系统 | ||
技术领域
本发明涉及移动互联网技术领域,特别涉及一种消息通信的方 法、服务器和系统。
背景技术
在移动互联网应用中需要构建客户端与服务器进行消息通信的 机制,或者多个客户端通过服务器进行消息通信的机制。目前轮询、 长连接等消息通信机制广泛应用于各个移动应用中。
轮询是指客户端定时向服务器发起消息查询的消息通信机制,具 体地,客户端在每个查询周期都会向服务器发起消息查询请求,如果 服务器没有发送给该客户端的消息,则返回空消息列表,如果有发送 给该客户端的消息,则返回该消息。轮询方式的弊端在于消息实时性 不强,并且客户端耗电量较大。
长连接是指服务器和客户端维持一条连接用于收发消息的消息 通信机制,具体地,客户端使用Socket连接向服务器发起长连接, 客户端和服务器同时维护该连接的状态,所有的消息发送及接收均使 用该连接。长连接方式的弊端在于客户端和服务器均需要维护该长连 接,业务逻辑复杂。
发明内容
本发明实施例所要解决的一个技术问题是:解决现有消息通信机制 存在的消息实时性差、客户端耗电量大以及业务逻辑复杂的问题。
根据本发明实施例的一个方面,提出一种消息通信的方法,包括: 服务器响应于客户端发送的消息查询请求,检查当前是否有发送给所 述客户端的消息;如果当前没有发送给所述客户端的消息,服务器将 所述客户端的消息查询请求挂起,等待发送给所述客户端的消息;如 果当前有发送给所述客户端的消息,服务器释放所述客户端的消息查 询请求,并且将所述客户端的消息发送给所述客户端。
在一个实施例中,服务器将所述客户端的消息发送给所述客户端 包括:服务器将所述客户端的消息和表示所述客户端的消息的令牌发 送给所述客户端。
在一个实施例中,消息通信的方法还包括:服务器响应于客户端 发送的另一消息查询请求,其中携带一令牌,判断所述另一消息查询 请求中携带的令牌是否为最近一次发送给所述客户端的令牌;如果所 述另一消息查询请求中携带的令牌是最近一次发送给所述客户端的令 牌,服务器释放该令牌对应的消息;如果所述另一消息查询请求中携 带的令牌不是最近一次发送给所述客户端的令牌,服务器向客户端重 新发送最近一次发送给所述客户端的令牌以及该令牌对应的消息。
在一个实施例中,消息通信的方法还包括:客户端向服务器发送 消息查询请求,并且等待服务器的响应,在接收到服务器的响应之前 不再发送消息查询请求。
在一个实施例中,消息通信的方法还包括:客户端向服务器发送 另一消息查询请求,其中携带最近一次接收到的服务器发送的令牌, 以表示本客户端已经接收到该令牌对应的消息。
根据本发明实施例的再一个方面,提出一种消息通信的服务器, 包括:消息检查模块,用于响应于客户端发送的消息查询请求,检查 当前是否有发送给所述客户端的消息;消息挂起模块,用于如果当前 没有发送给所述客户端的消息,将所述客户端的消息查询请求挂起, 等待发送给所述客户端的消息;消息发送模块,用于如果当前有发送 给所述客户端的消息,释放所述客户端的消息查询请求,并且将所述 客户端的消息发送给所述客户端。
在一个实施例中,消息发送模块包括:请求释放单元,用于如果 当前有发送给所述客户端的消息,释放所述客户端的消息查询请求; 消息发送单元,在用于将所述客户端的消息发送给所述客户端时,具 体用于将所述客户端的消息和表示所述客户端的消息的令牌发送给所 述客户端。
在一个实施例中,消息通信的服务器还包括:令牌判断模块,用 于响应于客户端发送的另一消息查询请求,其中携带一令牌,判断所 述另一消息查询请求中携带的令牌是否为最近一次发送给所述客户端 的令牌;消息释放模块,用于如果所述另一消息查询请求中携带的令 牌是最近一次发送给所述客户端的令牌,释放该令牌对应的消息;消 息重发模块,用于如果所述另一消息查询请求中携带的令牌不是最近 一次发送给所述客户端的令牌,向客户端重新发送最近一次发送给所 述客户端的令牌以及该令牌对应的消息。
根据本发明实施例的又一个方面,提出一种消息通信的系统,包 括:上述的服务器和客户端,客户端用于向服务器发送消息查询请求, 并且等待服务器的响应,在接收到服务器的响应之前不再发送消息查 询请求。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国电信股份有限公司,未经中国电信股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410488025.0/2.html,转载请声明来源钻瓜专利网。