论文部分内容阅读
随着门户网站业务的扩展和规模的增加,网站Web服务器的服务压力逐渐增大,安全性也在经受严峻的挑战,迫切需要实现一个中间服务器将内部网络和外部网络隔离,提高系统的吞吐量,保证内部系统的安全。反向代理技术实现外部请求到内部网络的入口,可以屏蔽内部主机信息,有效保护内部的Web服务器。本文采用反向代理技术,设计实现反向代理网关,提供高效、安全、稳定的代理服务器,实现外部用户请求的处理。
本文在对比相关的反向代理系统的运行原理和特点基础上,分析反向代理网关的系统功能,设计了系统的体系结构和模块结构。反向代理网关由轻量级代理服务器和资源监视程序组成,分别实现用户请求处理转发和后台服务器资源监视的功能。反向代理网关采用常驻线程和临时线程结合的方式实现系统功能,以满足高频率用户请求的需要。
Web请求转发和处理是反向代理网关的基础功能,是实现系统代理服务的前提。文章设计实现了用户Http请求对象构建,请求处理和转发流程,实现了系统管理请求的分析和处理功能。通过设计Web连接池管理系统Web连接,保持一定数量的连接数,减少重复创建Web连接的资源消耗,并能够用户的访问量动态的调节web连接数量,最大限度的满足用户需求。
反向代理网关采用数据缓存技术,对静态网页、图片、音乐等进行本地存储,在用户下次访问时,不需要连接web服务器,以提高用户请求的响应速度的目的。本文设计了Web数据的缓存策略,创建域名目录集中存储缓存数据文件,采用哈希表结构管理缓存目录对象和数据缓存对象。通过借鉴Web数据缓存的相关技术,设计了反向代理存储缓存数据和发送给客户端的处理流程。文章从缓存对象扫描和数据整理两个方面论述了Web数据的管理过程。
为了进一步提高系统的吞吐量,论文设计了基于服务器负载值的负载平衡策略,通过选择负载最小响应速度最快的后台服务器处理用户请求,从而提高系统的整体性能。反向代理服务器采集Web服务器的资源使用情况和平均响应时间,获取后台服务器的负载情况,计算服务器负载值,创建负载平衡队列,通过获取负载最小的Web服务器处理Http请求,实现系统的负载平衡。
最后本文描述了测试环境,对系统的请求转发性能和数据缓存性能进行测试,并对测试结果进行对比分析。测试结果表明:反向代理网关实现了用户请求转发和处理的功能,能够处理正常的用户请求;Web数据缓存在一定程度上提高了用户请求的响应速度和系统吞吐量。