论文部分内容阅读
随着互联网应用多元化的发展,网络应用技术也推陈出新。近年来的服务器推送技术在网页即时通信和实时股票价格等应用的开发中得到发展,成为各大网站中必不可少的技术之一。目前,大型购物网站为了改善用户体验,需要及时向用户发送交易信息和实时同步推送竞拍商品价格,本文研究和实现的消息推送平台正是为了解决此需求的网站应用。首先,本文研究对比了几种服务器推送技术的实现方案,确定了使用基于HTTP长连接的无需插件的Comet技术实现服务器推送,然后主要根据浏览器的支持度选择了基于AJAX长轮询方式实现Comet技术。然后,本文根据购物网站中消息推送的需求,将系统分为接入模块、消息推送模块和长连接模块。本文在具体实现系统的过程中充分考虑了系统的性能和算法的效率,例如采用了时间轮算法提高了长连接集合超时检查的效率;采用了延续(Continuation)方案解决异步请求,实现用少量线程维护大量的并发连接,提高了消息推送平台的性能,降低了服务器的开销。最后,本文对系统的并发长连接数、CPU占用率和内存占用大小等性能参数进行了测试和分析。本文研究和实现的消息推送平台可以竞拍商品的最新价格实时地推送到关注该商品的所有客户端,可将个人的交易消息和通知推送给已经登录的用户。消息推送平台能够推送多种消息类型,支持多种推送方式(包括一对一和一对多),具有高并发长连接数、低资源占用率等优点。