您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 基于HTTP长连接的消息推送平台的研究与实现
分类号学号M200971662学校代码10487密级硕士学位论文基于HTTP长连接的消息推送平台的研究与实现学位申请人:杨文婷学科专业:通信与信息系统指导老师:谭运猛副教授答辩日期:2012年1月4日AThesisSubmittedinPartialFulfillmentoftheRequirementsfortheDegreeofMasterofEngineeringResearchandImplementofHTTPPersistentConnectionbasedMessagePushPlatformCandidate:YangWentingMajor:Communication&InformationSystemSupervisor:AssociateProfessorTanYunmengHuazhongUniversityofScience&TechnologyWuhan,430074,P.R.ChinaJanuary,2012独创性声明本人声明所呈交的学位论文是我个人在导师的指导下进行的研究工作及取得的研究成果。尽我所知,除文中已标明引用的内容外,本论文不包含任何其他人或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。学位论文作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。保密□,在______年解密后适用本授权数。本论文属于不保密□。(请在以上方框内打“√”)学位论文作者签名:指导教师签名:日期:年月日日期:年月日华中科技大学硕士学位论文I摘要随着互联网应用多元化的发展,网络应用技术也推陈出新。近年来的服务器推送技术在网页即时通信和实时股票价格等应用的开发中得到发展,成为各大网站中必不可少的技术之一。目前,大型购物网站为了改善用户体验,需要及时向用户发送交易信息和实时同步推送竞拍商品价格,本文研究和实现的消息推送平台正是为了解决此需求的网站应用。首先,本文研究对比了几种服务器推送技术的实现方案,确定了使用基于HTTP长连接的无需插件的Comet技术实现服务器推送,然后主要根据浏览器的支持度选择了基于AJAX长轮询方式实现Comet技术。然后,本文根据购物网站中消息推送的需求,将系统分为接入模块、消息推送模块和长连接模块。本文在具体实现系统的过程中充分考虑了系统的性能和算法的效率,例如采用了时间轮算法提高了长连接集合超时检查的效率;采用了延续(Continuation)方案解决异步请求,实现用少量线程维护大量的并发连接,提高了消息推送平台的性能,降低了服务器的开销。最后,本文对系统的并发长连接数、CPU占用率和内存占用大小等性能参数进行了测试和分析。本文研究和实现的消息推送平台可以竞拍商品的最新价格实时地推送到关注该商品的所有客户端,可将个人的交易消息和通知推送给已经登录的用户。消息推送平台能够推送多种消息类型,支持多种推送方式(包括一对一和一对多),具有高并发长连接数、低资源占用率等优点。关键词:消息推送平台,服务器推送,Comet,HTTP长连接,AJAX长轮询华中科技大学硕士学位论文IIABSTRACTAlongwithawiderangeofInternetapplicationsdevelopment,networkapplicationtechnologyalsomovesforward.Inrecentyears,serverpushtechnologywasdevelopedinmanywebapplicationssuchasInstantMessagingandreal-timestockpricesystem.Itbecameoneoftheessentialtechnologiesinmajorwebsites.Atpresent,inordertoimprovetheuserexperience,thelargeshoppingwebsitesneedtosendtradinginformationandreal-timeauctionspricetousersimmediately.Themessagepushplatformimplementedandintroducedinthisthesisisawebsitesolutionforthatneeds.Firstly,thisstudydeterminedtouseComettechnologywhichisbasedonHTTPpersistentconnectionwithoutplug-inbycomparingseveralserver-pushtechnologyimplementations.Then,thisstudychoseAJAXlongpullingtoimplementComettechnologyaccordingtoitsgoodbrowsersupporting.Secondly,accordingtothemessage-pushingdemandoftheshoppingwebsite,thissystemwasdividedintothreemodules,includingaccessmodule,message-pushingmoduleandlongconnectionmodule.Boththesystemperformanceandefficiencyhavebeenconsideredinthisthesis.Thetime-wheelalgorithmisusedtoimproveefficiencyofovertimechecking.TheContinuationmethodisusedtoprocessasynchronousrequest,sothatlargenumberofconcurrentconnectionaremaintainedbyfewthread.Thereforethesystemperformanceisgreatlyimprovedwhileloweringthecost.Finally,thisstudytestsandanalyzesthesystemperformanceparameters,includingthenumberofconcurrentpersistentconnection,CPUutilizationandmemoryfootprintsize.Inthisthesis,themessagepushplatformcanpushlatestactionpricetoalluserswhofocusonthewebpage,canpushtransactionmessagesandnotificationstousersloggedon.Theplatformalsocanpushavarietyofmessagetypes,supportmultipledeliverymethods(includingone-to-oneandone-to-many).Italsohasadvantagessuchaslargenumberofconcurrentconnectionsandsmallsystemresourceoccupationrate.Keywords:MessagePushPlatform,ServerPush,Comet,HTTPpersistentconnection,AJAXlongpolling华中科技大学硕士学位论文III目录摘要....................................................................................................................IAbstract............................................................................................................II1绪论1.1课题背景和意义.................................................................................(1)1.2国内外研究现状.................................................................................(2)1.3系统主要内容和结构安排.................................................................(3)2相关技术介绍2.1HTTP/1.1长连接................................................................................(5)2.2Comet技术.........................................................................................(7)2.3Servlet容器——Jetty........................................................................(9)2.4本章小结............................................................................................(10)3系统总体设计方案3.1系统功能需求...................................................................................(11)3.2系统设计方案...................................................................................(11)3.3本章小结............................................................................................(22)4系统具体实现4.1消息推送平台详细结构...................................................................(23)4.2HTTP长连接模块实现....................................................................(24)4.3消息推送模块实现...........................................................................(29)华中科技大学硕士学位论文IV4.4浏览器客户端显示模块...................................................................(33)4.5本章小结............................................................................................(35)5系统性能分
本文标题:基于HTTP长连接的消息推送平台的研究与实现
链接地址:https://www.777doc.com/doc-4164486 .html