[发明专利]应用内轻量级推送方法有效
| 申请号: | 201310750165.6 | 申请日: | 2013-12-31 |
| 公开(公告)号: | CN103780603B | 公开(公告)日: | 2016-10-19 |
| 发明(设计)人: | 李龙江;刘社平;李永刚 | 申请(专利权)人: | 电子科技大学 |
| 主分类号: | H04L29/06 | 分类号: | H04L29/06 |
| 代理公司: | 成都宏顺专利代理事务所(普通合伙) 51227 | 代理人: | 王伟;周永宏 |
| 地址: | 611731 四川省成*** | 国省代码: | 四川;51 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 应用 轻量级 推送 方法 | ||
技术领域
本发明属于无线通信技术领域,具体涉及一种应用内轻量级推送方法的设计。
背景技术
由于HTTP在每次请求结束后都会主动释放连接,要保持客户端程序的在线状态,需要不断地向服务器发起连接请求。现有技术的通常做法是即使不需要获得任何数据,客户端也保持每隔一段固定的时间向服务器发送一次“保持连接”的请求,服务器在收到该请求后对客户端进行回复,表明知道客户端“在线”。若服务器长时间无法收到客户端的请求,则认为客户端“下线”,若客户端长时间无法收到服务器的回复,则认为网络已经断开。
这个连接请求是由客户端主动发送的,但是客户端并不清楚服务器端什么时候有数据的更新,再者上述通常做法中客户端隔一段时间发连接请求,服务器端在没有连接的情况下,即使有数据的更新也不能及时的推送。
发明内容
本发明所要解决的技术问题是针对现有技术中服务器无法主动和客户端建立连接而导致的服务器数据推送不及时或者没有连接而造成无法推送的问题提出了一种应用内轻量级推送方法。
本发明解决其技术问题采用的技术方案是:应用内轻量级推送方法,具体包括:
步骤1、客户端向服务器发送HTTP连接请求和用户标识信息,服务器收到该请求后,启动在服务器端的时间戳开始倒计时,所述时间戳的时间长度为预设周期T,当时间戳倒计时剩余时间等于预设时间t时,服务器主动向客户端发送一个信号,客户端收到该信号后立即向服务器再次发送HTTP连接请求,建立连接;
步骤2、当所述步骤S1中客户端向服务器再次发送HTTP连接请求成功建立连接后,服务器处理收到的携带用户标识信息的消息,获得客户端该应用对应的用户标识信息;
如果所述用户标识信息对应的用户有数据的更新,服务器利用已建立的连接把更新的数据推送给相应的客户端用户,并且记录推送时间;如果没有数据的更新,服务器向相应的客户端用户发送一条空消息并记录发送时间,然后保持连接到有数据更新或者连接时间超时断开连接;
步骤3、客户端和服务器之间的连接断开时,与服务器对应的数据库将数据库中更新的数据放到服务器的缓存表中,在下次用户打开应用,客户端与服务器之间成功建立连接时,服务器把缓存表中的数据推送到客户端。
进一步的,所述客户端对应的每个应用都有一个应用表格,用于存放用户名和其对应的ID,如果客户端用户是第一次使用该应用,则需要注册获得一个ID,所述ID用于作为用户标识信息,并把ID号对应的用户名存放在该应用的应用表格中;如果不是第一次使用该应用,则在该应用的应用表格中存在该用户的用户名及其对应的ID号。
进一步的,所述步骤2中,服务器向客户端推送的数据是根据上次推送时间进行的增量推送,具体为:服务器采用时间标签对数据库中的数据进行时间更新的记录,时间标签的更新随数据库中数据更新而更新,服务器将上一次推送数据的时间和数据库中数据的更新时间作对比,然后取出数据库中更新的信息推送到客户端并记录本次推送数据的时间。
进一步的,所述服务器端采用缓存表来存放不同用户对应的不同类型的所有更新信息,所述缓存表中包括消息类型和本类型消息的推送时间,并且在数据库中存在对应的更新表,所述更新表中包括消息类型和消息更新时间。
更进一步的,在服务器推送完数据后,服务器将自动检测缓存表中的数据是否有新的更新数据没有推送,如果所有数据都已经推送,则清除缓存表中的数据,否则把缓存表中的数据全部推送后清除缓存表。
本发明的有益效果是:本发明一种应用内轻量级推送方法通过在服务器端设置时间戳来实现客户端周期性的发送连接请求,避免了数据更新不及时和无法推送数据;并且在服务器端和数据库采用时间标签的机制,通过时间的对比在服务器端的缓存表中只存放本次更新的数据,缓存表中的数据若是有同一个用户的不同类型的消息则通过打包机制把所有数据一次的推送到客户端,推送后的缓存表则清空,能够将更新的数据及时的推送到客户端,显示给用户,而且能够在满足用户的需求的同时减少服务器端的数据处理开销和内存空间的开销。
附图说明
图1所示为本发明具体实施方式的应用内轻量级推送方法的流程框图;
图2所示为本发明具体实施方式具体事例的流程框图。
具体实施方式
下面结合附图和具体的实施例对本发明作进一步的阐述。
如图1所示为本发明实施方式的应用内轻量级推送方法的流程框图,其具体包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310750165.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种冷冻干燥复方浆果超微粉及其生产方法
- 下一篇:坐式推力器





