The invention discloses a method, a server and a system for message communication. The embodiment of the invention sends a message query request in the client, if there is no message server client message query requests pending, blocking the client message thread, prevent repeat client initiates request, in order to reduce the power consumption of the terminal, once the client message, the server will immediately send a message to the client, so as to improve the real-time performance the message, and the client does not need to maintain the connection, therefore, reduce the complexity of client business logic.
【技术实现步骤摘要】
本专利技术涉及移动互联网
,特别涉及一种消息通信的方法、服务器和系统。
技术介绍
在移动互联网应用中需要构建客户端与服务器进行消息通信的机制,或者多个客户端通过服务器进行消息通信的机制。目前轮询、长连接等消息通信机制广泛应用于各个移动应用中。轮询是指客户端定时向服务器发起消息查询的消息通信机制,具体地,客户端在每个查询周期都会向服务器发起消息查询请求,如果服务器没有发送给该客户端的消息,则返回空消息列表,如果有发送给该客户端的消息,则返回该消息。轮询方式的弊端在于消息实时性不强,并且客户端耗电量较大。长连接是指服务器和客户端维持一条连接用于收发消息的消息通信机制,具体地,客户端使用Socket连接向服务器发起长连接,客户端和服务器同时维护该连接的状态,所有的消息发送及接收均使用该连接。长连接方式的弊端在于客户端和服务器均需要维护该长连接,业务逻辑复杂。
技术实现思路
本专利技术实施例所要解决的一个技术问题是:解决现有消息通信机制存在的消息实时性差、客户端耗电量大以及业务逻辑复杂的问题。根据本专利技术实施例的一个方面,提出一种消息通信的方法,包括:服务器响应于客户端发送的消息查询请求,检查当前是否有发送给所述客户端的消息;如果当前没有发送给所述客户端的消息,服务器将所述客户端的消息查询请求挂起,等待发送给所述客户端的消息;如果当前有发送给所述客户端的消息,服 ...
【技术保护点】
一种消息通信的方法,包括:服务器响应于客户端发送的消息查询请求,检查当前是否有发送给所述客户端的消息;如果当前没有发送给所述客户端的消息,服务器将所述客户端的消息查询请求挂起,等待发送给所述客户端的消息;如果当前有发送给所述客户端的消息,服务器释放所述客户端的消息查询请求,并且将所述客户端的消息发送给所述客户端。
【技术特征摘要】
1.一种消息通信的方法,包括:
服务器响应于客户端发送的消息查询请求,检查当前是否有发送
给所述客户端的消息;
如果当前没有发送给所述客户端的消息,服务器将所述客户端的
消息查询请求挂起,等待发送给所述客户端的消息;
如果当前有发送给所述客户端的消息,服务器释放所述客户端的
消息查询请求,并且将所述客户端的消息发送给所述客户端。
2.根据权利要求1所述的方法,其特征在于,所述服务器将所述
客户端的消息发送给所述客户端包括:
服务器将所述客户端的消息和表示所述客户端的消息的令牌发送
给所述客户端。
3.根据权利要求2所述的方法,其特征在于,还包括:
服务器响应于客户端发送的另一消息查询请求,其中携带一令牌,
判断所述另一消息查询请求中携带的令牌是否为最近一次发送给所述
客户端的令牌;
如果所述另一消息查询请求中携带的令牌是最近一次发送给所述
客户端的令牌,服务器释放该令牌对应的消息;
如果所述另一消息查询请求中携带的令牌不是最近一次发送给所
述客户端的令牌,服务器向客户端重新发送最近一次发送给所述客户
端的令牌以及该令牌对应的消息。
4.根据权利要求1所述的方法,其特征在于,还包括:
客户端向服务器发送消息查询请求,并且等待服务器的响应,在
接收到服务器的响应之前不再发送消息查询请求。
5.根据权利要求3所述的方法,其特征在于,还包括:
客户端向服务器发送另一消息查询请求,其中携带最近一次接收
到的服务器发送的令牌,以表示本客户端已经接收到该令牌对应的消
息。
6.一种消息通信的服务器,包括:
消息检查模块,用于响应于客户端发送的消息查询请求,检查当
前是否有发送给所述客户端...
【专利技术属性】
技术研发人员:宋平波,杨翊平,
申请(专利权)人:中国电信股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。