基于Ngin服务器负载均衡技术的研究与改进

基于Nginx服务器负载均衡技术的研究与改进张云许江淳李玉惠王志伟史鹏坤---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除------本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除------本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---摘要:为了减轻快速增长的网络负载压力,本文为web后端服务器集群搭建了基于Nginx的负载均衡服务器,将其作为集群的反向代理服务器,使集群具备了负载均衡的功能,对负载均衡算法进行了分析。并针对Ngmx自带负载均衡策略的缺陷提出了一种动态自适应负载均衡算法,改进型加权最小连接数算法,同时对其算法进行了设计。测试的实验结果验证了改进型加权最小连接数算法的可行性。关键词:Nginx;服务器集群;均衡策略;动态自适应负载均衡算法:TP3-05:ADOI:10.3969/j.issn.1003-6970.2017.08.002本文著录格式:张云,许江淳,李玉惠,等.基于服务器负载均衡技术的研究与改进[J].软件,2017,38(7):06-12---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---随着移动互联网的蓬勃发展,传统运营商的主要利润点如短信及话费的利润受到前所未有的冲击。为适应新时代的新形势,各大运营商均已在网络支撑方面传统的运维体系已出现在面对大量网络负荷时请求处理缓慢,服务器负载过重导致页面无响应等使用户使用体验较差等状况。因此各大运营商均将建立新一代集中运维体系作为一个重要缓解网络压力手段。本文针对Nginx自带的算法不能考虑服务器集群中各个具体服务器的实时负载情况单纯按照初始设定来经行网络请求分配的问题,对Linux操作系统和Nginx服务器源码进行分析和研究,着重对负载均衡算法进行了优化从而达到减少服务器响应时间的同时提高服务器性能的稳定性,进而使用户获得更好的网络服务体验。1Nginx服务器1.1Nginx的模块体系Nginx的内部结构是由核心部分和一系列功能检块组成的,这样使得每个模块的功能相对简单,便于对系统进行功能扩展,各模块之间的关系如图1所示:标准的Nginx模块一般可分为五大类:核心模块,邮件服务模块,可选Http模块,标准Http模块和第三方模块。http模块和mail模块分别处理http相关协议与邮件相关协议(如SMTP/IMAP/POP3等)的各类事件,同时确保这些事件能以正确的顺序来调用其它相关功能模块。(1)事件模块(eventmodule),用于搭建独立的事件处理框架包括独立的事件处理机制和事物响应机制,为nginx处理各种不同事物提供保障。(2)handler模块(phasehandler),用来处理具体的用户请求并同时生成待响应内容。(3)filter模块(outputfilter),用来处理像客户端发送的响应,通过该模块可以对服务器向客户端的输出经行修改。---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---(4)反向代理模块(upstream),Nginx可作为反向代理服务器,用户先将请求发送到反向代理服务器,反向代理服务器再根据请求类型或路由参数将具体请求在提交给真正处理请求的后端服务器,读取响应数据并将该数据在传回客户端。(5)负载均衡模块(load-balancer),该模块内含多种负载均衡算法,与upstream模块同时使用,当upstream配置文件中使用不同标记时调用该模块中不同算法来实现不同的负载均衡策略。(6)第三方模块(extendmodule),具体使用时如Nginx自带模块并不能很好解决实际问题时,用户需可自行添加一些模块。1.2Nginx的服务器架构Nginx在运行时会产生一个主进程和多个工作进程,同时也会产生一些cache相关进程。工作时,客户端发出新的网络请求时,Ngmx服务器会与后端服务器进行通信,根据具体的负载均衡策略Ngmx会将请求提交给不同的服务器,服务器接到这些请求时会进行数据的处理以及相关页面的渲染,然后将这些处理后的内容提交给Nginx服务器,Nginx服务器再将接收到的处理结果反馈给客户端。当客户端访问的是一些常用数据时,Ngmx服务器会根据客户端发送的请求来确定客户端所需要的具体内容同时根据该请求来访问不同的缓存服务器,缓存服务器给Nginx返回具体数据后,Nginx将缓存服务返回...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

文秘专家
机构认证
内容提供者

1

确认删除?