论文部分内容阅读
传统B/S架构基于HTTP协议,是一种无状态的通信方式,渐渐不能满足人们对实时通信的质量需求。服务器推送技术基于Ajax、Comet、Websocket技术,可以实现Web服务器与客户端之间的实时通信,根据不同推送方式的特点,不同的应用场景选择不同的推送方式。本文选取层次分析法和熵权法综合对环境因素进行权值评估,采用基于CART决策树的XGBoost算法作为动态决策的核心算法,设计了一个决策框架,选用一种在线游戏的实验场景对决策模块进行训练,并进行性能测试。实验结果表明,本文提出的基于XGBoost算法的动态决策服务器推送框架运用在服务器推送方式动态决策问题上,基本能满足相应场景下推送方式的合理决策,能表现出良好性能,较单一推送方式能合理利用网络资源。文章主要内容包括:(1)阐述了当前服务器主动推送技术的发展现状和存在的问题。三种不同推送方法有着不同的使用场景,轮询适合简单、请求周期固定、对实时性要求不高的服务场景,Comet适合对事件频率和实时性都有一定要求的服务,性能比较适中。Websocket是一种新标准,能实现服务端、浏览器间长久的连接,但对前期后台开发要求高,需要独立的后台服务程序。(2)分析现代人工智能、机器学习领域算法,选用基于CART树的XGBoost系列算法作为决策算法,基于树模型的XGBoost则能很好地处理表格数据,同时还拥有一些深度神经网络所没有的特性。(3)利用基于决策树的XGBoost算法设计一种实现动态决策服务器推送功能的模型,程序实现并测试模型的合理性和其他方面性能。(4)设计不同实验场景对本文设计的模型进行测试,分析和总结实验结果。