论文部分内容阅读
随着网络技术的快速发展以及计算机的普及,网络上的信息量每天都在快速增长,如何在海量信息中快速的找到自己需要的信息十分重要。信息推送服务主要是服务器根据每个人所在的位置不同、兴趣爱好不同等个人特点,及时、快速的向用户推送相应的信息,然后可以在相应的浏览器中显示出来。本文主要是研究基于位置感知的推送服务。目前基于位置感知的服务主要是基于移动通信网络和卫星定位系统一起提供的增值服务,根据用户的位置向用户提供服务。而家庭基站可以提升网络容量,很好的解决移动网络通信室内覆盖较弱的情况,提供更精确的定位。同时克服了GPS在天气不好情况下定位不准确的弱点,可以给用户提供精确的位置服务。在本文中,我们将使用家庭基站(femtocell)的位置感知来实现推送服务。本论文是在家庭基站的基础上进行应用开发的,主要分为服务器端、客户端和家庭基站端三部分。服务器端本文将使用Linux平台保证系统的稳定性和可靠性,并使用Epoll这种I/O复用模型和线程池的任务管理调度策略来保证大规模高并发的TCP连接下系统的性能。本系统采用基于TCP长连接的服务器端推技术,此技术在手机端与服务器端建立长久连接,以便有信息需要推送时可以及时有效的推送出去。同时系统使用了心跳机制,可以使得服务器端能够及时的检测客户端的连接状态,避免连接断开服务器一直等待而造成资源浪费。客户端则选用基于Linux内核,具有开源性并受到大众喜欢的Android系统。同时,系统选用MySQL的数据库,并使用以面向对象的方式对ODBC API进行封装的SimpleDB(simple C++database API)对数据库进行操作。家庭基站端则选用Ablaze Wireless公司的针对家庭基站应用设计的AW600型号嵌入式开发板。最后本文通过编程来实现服务器端、手机端和家庭基站端。并对系统进行了测试,验证了客户端在进入到家庭基站后能够及时的被感知,并能正确接收到服务器端推送的信息。鉴于目前家庭基站的技术还没有推广,基于家庭基站相关的推送服务很少,实现基于家庭基站的推送系统具有一定的价值和意义。