论文部分内容阅读
随着计算机网络和通信技术的快速发展,越来越多的人通过移动互联网获取信息,大量移动设备用户进入网络,需要各类数据处理中心的服务器具备更加复杂并且越来越高的要求,能够接受合理的客户端请求并在短时间内做出应答相应,此外服务器系统必须保持高可用和可靠的特性。例如当前腾讯的微信,QQ等网络通信服务,每日都会经受巨大的通信流量。如此巨大的数据流量和复杂的传输要求,迫切需要具有快速响应能力、高可伸缩性、高可用性、易于管理的信息通信服务器来应对。在复杂的移动平台环境下,如何安全有效且快速地响应客户端的请求,充分利用后端服务器节点的资源能力,渐渐成为影响分布式通信集群架构的难点与重点。本文结合真实的基于XMPP协议的分布式通信集群环境,首先对当前的即时通讯技术、分布式通信集群技术、负载均衡技术、安全通信技术等关键技术进行了调研,发现原有的负载均衡技术在处理基于XMPP协议的通信环境下所存在的调度分配问题。负载均衡算法是实现XMPP通信服务器集群前端的负载均衡器的核心问题,及时准确地预测负载情况是实现合理调度分流的前提。本文分析了现有的负载均衡算法存在的问题,针对这些问题提出了针对于移动平台使用XMPP协议服务器端的基于分类回归树和K近邻结合的预测算法。该方法首先通过动态反馈采集服务器节点的资源信息组成时间序列,对时间序列进行预测计算。然后将服务器节点分区域管理,运用不同的调度策略。实验证明,与Nginx中的轮询和fair算法相比,该预测算法在连接响应时间上减少了 25%,在建立连接的平均速率上提升了近1.3倍,动态的调度策略使得整个服务器集群有更大的吞吐量和可伸缩性,对于移动平台具有更好的适应性。同时本文设计并实现了基于XMPP协议的分布式通信集群系统,详细介绍了系统的需求分析和设计原则,并且对于系统进行模块划分,针对各个模块进行了设计并具体实现,使用的关键技术包括了服务器集群技术、安全通信技术、数据库技术和负载均衡技术。引入的安全通信技术考虑了集群对内和对外的安全,提升了系统的可靠性;并对于负载均衡算法中的多个关键点进行了突破和改进,提升了集群系统的可用性,可伸缩性,和对请求的快速响应能力。