一种基于大型网站组合均衡的方法

文档序号:7822724阅读:203来源:国知局
一种基于大型网站组合均衡的方法
【专利摘要】本发明是一种基于大型网站组合均衡的方法,通过对综合性大型网站的信息分类,可以分成数据文件和数据库数据;数据文件通过LVS.DR进行均衡,通过对IPVS模块设置IP绑定,可以做到IP级均衡策略,同时通过NGINX对独立文件夹中文件为本地访问,可以对数据文件即时返回,并且把数据直接返回到客户,很好的解决均衡设备的网络瓶颈问题;对数据库数据通过NGINX进行反向代理并均衡到相应的应用服务器,应用服务通过分布式数据库,提供数据支持,无需使用共享存储来共享SESSION的值,只需要根据SESSION自动粘性的连接到相应的应用服务器即可,从而从整体上减小了可能出现的共享SESSION而造成的瓶颈。
【专利说明】一种基于大型网站组合均衡的方法

【技术领域】
[0001]本发明涉及一种网络应用的组合均衡技术,具体的说是一种基于大型网站组合均衡的方法。

【背景技术】
[0002]现有技术中主流的均衡技术主要有以下5种:(1)HTTP重定向负载均衡,其是一种利用HTTP协议中的301 Moved Permanently (永久重定位),可以让客户机重新通过返回的Locat1n进行发送新的请求;通过返回不同的Locat1n起到访问不同的应用服务器,从而起到均衡作用。⑵DNS域名解析负载均衡,其是指利用DNS (域名)服务器,在这里,通常是指二级DNS服务器,比如www.my web.com,可以通过一级域名设定域名服务器为myweb.com,然后在myweb.com提人工域名服务,并在www.myweb.com中增加多个记录,从而使DNS服务器根据均衡算法,返回多个记录中具体的IP地址,从而起到均衡作用。⑶反向代理负载均衡,其是指通过反向代理服务器提供负载均衡的功能,反向代理服务器在应用服务器之前,并且通常配两张网卡,横跨两个网段,当客户的请求到达反向代理服务器的外端时,根据负载均衡算法转发到内端的不同WEB服务器上,从而实现均衡作用;反向代理服务器比较多,如APACHE,NGINX等,这种方式可以通地上层HTTP协议中的SESS1N来绑定应用服务器,比较适合网站登陆用户交互的情形。⑷IP负载均衡,其是指通过内核进程,把来的数据包的目标IP,通过均衡算法改成目标应服务器的IP,然后把源IP改成自己的IP地址,发送到目标济源用服务器,应用服务器处理后返回到IP负载均衡器,从而再返给访问客户,从而形成均衡。(5)数据链路层负载均衡,其是指在通信协议的数据链路层修改mac地址进行负载均衡,这种模式是一种三角传输模式,负载均衡数据分发过程中不修改IP地址,只改目的mac地址,通过配置真实物理服务器集群所有机器虚拟IP和负载均衡服务器IP地址一致,从而达到不修改数据包的源地址和目的地址就可以进行数据分发的目的,由于实际处理请求的真实物理服务器IP和数据请求目的IP —致,不需要通过负载均衡服务器进行地址转换,可将响应数据包直接返回给用户浏览器,避免负载均衡服务器网卡带宽成为瓶颈;这种负载均衡方式通常在Iinux虚拟机(LVS:Linux Virtual Server)上实现,它是一种直接路由方式(DR !Direct Routing),所以总称简写为LVS.DR。
[0003]以上现有的均衡技术存在的问题是:(1)HTTP重定向负载均衡是一种跨互联网的均衡方案,在实际大型网站中很少用来做均衡方案,因为其对转过去的连接的有效性不能评估,并且也不知道应用服务器的用户情况,并且需要较多的互联网外网IP资源,很难进行有效管理。⑵DNS域名解析负载均衡也是一种跨互联网的均衡方案,在实际大型网站中也很少用到,这个基本是用来集团公司整合在全球各个子服务器网站集成在一起的方法,相对这些网站是可以相对独立的,并且这也需要较多的互联网外网IP资源,很难进行有效管理。⑶反向代理负载均衡可以通过上层协议对SESS1N来形成粘性均衡,使均衡比较适宜交互性的,但由于都要通过代理负载均衡,很容易让它本身成为瓶颈。⑷IP负载均衡比反向代理负载均衡效率要提高一些,但它不宜通过SESS1N来形成粘性均衡,只能通过IP地址,这个在很多情况下,还要通地共享缓存机制来完成均衡,但往往共享缓存机制会形成瓶颈。(5)数据链路层负载均衡是效率最高的,因为它工作在数据链路层,并且数据在回来时,可以直接到达客户,这对静态数据非常适合,但它同样不能获取SESS1N的信息,使其在实际做均衡时,还要结共享缓存机制来完成均衡,但共享缓存也很容易形成瓶颈,特别是在交互非常平凡的情况下。


【发明内容】

[0004]本发明所要解决的技术问题是,克服现有技术的缺点,提供一种基于大型网站组合均衡的方法,可以对数据文件即时返回,并且把数据直接返回到客户,很好的解决均衡设备的网络瓶颈问题,且无需使用共享存储来共享SESS1N的值,从整体上减小了可能出现的共享SESS1N而造成的瓶颈。
[0005]本发明解决以上技术问题的技术方案是:
一种基于大型网站组合均衡的方法,按以下步骤进行:
(-)对大型网站内容进行分类,分成文件数据和数据库数据,其中文件数据是用文件系统直接管理的数据,特点是不太容易发生变化的,也无需进行运算处理的,单一数据相对较大的,也称为静态数据,比如图片、视频等;数据库数据是在数据库系统进行管理的数据,特点是容易发生变化的,并且常常需要运算处理,单一数据不大的,也称为动态数据,比如对事务的属性描述、关系描述等;
㈡设置至少3台均衡量服务器来做均衡,其中I台为LVS.DR均衡服务器,另外至少2台为HTTP均衡服务器,每台HTTP均衡服务器至少连接2台应用服务器,设置一个分布式文件系统和一个分布式数据库;
(Ξ)对划分的不同的数据类型分别进行存储,其中文件数据存储在分布式文件系统中,数据库数据存储在分布式数据库中,其中,文件数据访问过程具体为:
⑴客户通过HTTP协议发送GET请求;
⑵LVS.DR均衡服务器收到这个数据包后,在均衡服务器中选择目标机为一个HTTP均衡服务器,并把相应数据包中目标MAC地址改成该HTTP均衡服务器的MAC地址,继续发到本局域网中;
⑶该HTTP均衡服务器收到步骤⑵中相应数据包后,发现是自己的MAC地址,又发现是自己本地地址,则收取并进行处理,并把包信息传到NGINX服务中;
⑷NGINX系统根据配制查找本地路径上的DataFile目录,找到,但这个目录其实是网上的一个分布式文件系统,并在这个文件系统根目录寻找X.aiv这个影像文件;
(5)找到影像文件后,并通过来源地址形成数据返回包,并把包直接发到客户的机器上,客户就收到这个文件数据;
(6)在每台HTTP均衡服务器上配制本地虚拟路径DataFile目录,以指向分布式文件系统;
其中,数据库数据访问过程具体为:
⑴客户通过HTTP协议发送GET请求;
⑵LVS.DR均衡服务器收到这个数据包后,在均衡服务器中选择目标机为一个HTTP均衡服务器,并把相应数据包中目标MAC地址改成该HTTP均衡服务器的MAC地址,继续发到本局域网中;
⑶该HTTP均衡服务器收到步骤⑵中相应数据包后,发现是自己的MAC地址,又发现是自己本地地址,则收取并进行处理,并把包信息传到NGINX服务中;
⑷NGINX系统根据配制查找本地路径,发现非本地路径,则找到反向代理,代理中设置了多台处理这个请求的应用服务地址,其中一台应用服务器通过反向代理向其自己转发请求,转发时变更为自身以太网IP地址,并把目标地址和端口设为该应用服务器的地址和端P ;
(5)该应用服务器对发过来的请求进行处理,并根据应用配制访问分布式数据库相关数据,处理后组成请求回执,并回发给相应的HTTP均衡服务器;
(6)相应的HTTP均衡服务器再通过源地址,直接返回给客户回执数据。
[0006]优选的,本发明基于大型网站组合均衡的方法,其中均衡量服务器、应用服务器、分布式文件系统以及分布式数据库具体部署为:
⑴将均衡量服务器全部安装LINUX应用系统,所有均衡量服务器都在同一网段内;⑵在LVS.D均衡服务器上安装LVS.DR服务端,即IP_VS模块,并设置两个IP,其中一个IP用于运维使用,另一个IP为均衡VIP ;
⑶在HTTP均衡服务器上安装LVS.DR的客户端,分配配制运维使用的端口,同时配制LVS IP都为相同的IP,并通过arp_ignore和arp_announce指令来对ARP进行抑制,以使数据包在这个网段中能够正常流转;
⑷在HTTP均衡服务器上安装NGINX V1.0中间件,设置反向代理与均衡,并通过nginx.conf配制文件设置指定目录和服务器均衡量列表;
(5)在每台均衡量服务器上配制本地虚拟路径DataFile目录,以指向分布式文件系统;
(6)在NGINX所对应的服务器列表中的每台应用服务都通过中间件,再与分布式数据库相连,使应用服务器群通过多个NGINX均衡来提供服务。
[0007]本发明的有益效果是:(1)通过对综合性大型网站的信息分类,可以分成数据文件和数据库数据。⑵数据文件通过LVS.DR进行均衡,通过对IPVS模块设置IP绑定,可以做到IP级均衡策略,同时通过NGINX对独立文件夹中文件为本地访问,可以对数据文件即时返回,并且把数据直接返回到客户,很好的解决均衡设备的网络瓶颈问题。⑶对数据库数据通过NGINX进行反向代理并均衡到相应的应用服务器,应用服务通过分布式数据库,提供数据支持,这种均衡由于是在SESS1N级的,无需使用共享存储来共享SESS1N的值,只需要根据SESS1N自动粘性的连接到相应的应用服务器即可,从而从整体上减小了可能出现的共享SESS1N而造成的瓶颈。

【专利附图】

【附图说明】
[0008]图1是本发明的均衡量服务器、应用服务器、分布式文件系统以及分布式数据库部署示意图。
[0009]图2是文件数据访问过程示意图。
[0010]图3是数据库数据访问过程示意图。

【具体实施方式】
[0011]实施例1
本实施例提供是一种基于大型网站组合均衡的方法,按以下步骤进行:
(-)对大型网站内容进行分类,分成文件数据和数据库数据,其中文件数据是用文件系统直接管理的数据,特点是不太容易发生变化的,也无需进行运算处理的,单一数据相对较大的,也称为静态数据,比如图片、视频等;数据库数据是在数据库系统进行管理的数据,特点是容易发生变化的,并且常常需要运算处理,单一数据不大的,也称为动态数据,比如对事务的属性描述、关系描述等。
[0012]㈡设置4台均衡量服务器来做均衡,其中I台为LVS.DR均衡服务器(IP:192.168.0.1,LVS IP:10.10.10.1,MAC:04 04 04 9a 9b 9c),另外 3 台为 HTTP 均衡服务器,分别为 HTTP 均衡服务器 I (IP:192.168.0.2, LVS IP: 10.10.10.1,MAC: 14 14 14 5a5b 5c)、HTTP 均衡服务器 2 (IP:192.168.0.3, LVS IP:10.10.10.1,MAC:24 24 24 6a 6b6c)和 HTTP 均衡服务器 3 (IP:192.168.0.4,LVS IP:10.10.10.1,MAC:34 34 34 7a 7b7c),每台HTTP均衡服务器连接3台应用服务器(分别为:WEB应用服务器1_1、WEB应用服务器1-2、WEB应用服务器1-3、WEB应用服务器2_1、WEB应用服务器2_2、WEB应用服务器2-3、WEB应用服务器3-1、WEB应用服务器3_2、WEB应用服务器3_30),设置一个分布式文件系统和一个分布式数据库。
[0013]其中均衡量服务器、应用服务器、分布式文件系统以及分布式数据库具体部署如图1所示,具体为:
⑴在192.168.0.1至192.168.0.4全部安装LINUX应用系统,本实施例中安装的是redhat 5.4版本,把这4台服务器统称为均衡服务器,其中I号机为LVS.DR均衡服务器,另个三台为HTTP均衡服务器,注:4台服务器需要在同一网段内;
⑵在LVS.DR均衡服务器上安装LVS.DR服务端,也就是IP_VS模块,并设置两个IP,其中192.168.0.1是指运维使用,而LVS IP 10.10.10.1是均衡VIP。
[0014]⑶在HTTP均衡服务器上安装LVS.DR的客户端,分配配制运维使用的端口为192.168.0.2,192.168.0.3 和 192.168.0.4,同时配制 LVS IP 都为 10.10.10.1,并需要同过arp_ignore和arp_announce指令来对ARP进行抑制,以使数据包在这个网段中能够正常流转;
⑷在HTTP均衡服务器上安装NGINX V1.0中间件,设置反向代理与均衡,并通过nginx.conf配制文件设置本地访问目录和服务器均衡量列表,比如通过配制文件中的Locat1n节点来设置指定DataFile目录为本地网络文件系统访问挂接路径,并将其它目录通过配制文件中upstream节点来设置均衡列表。
[0015](5)在每台均衡量服务器上配制本地虚拟路径DataFile目录,以指向分布式文件系统;
(6)在NGINX所对应的服务器列表中的每台应用服务都通过中间件,再与分布式数据库相连,使应用服务器群通过多个NGINX均衡来提供服务。
[0016]㈢对划分的不同的数据类型分别进行存储,其中文件数据存储在分布式文件系统中,数据库数据存储在分布式数据库中,其中,文件数据访问过程如图2所示,具体为:
⑴客户通过HTTP协议发送GET请求,比如为:10.10.10.l\DataFile\x.aiv的个一影像文件; ⑵LVS.DR均衡器收到这个数据包后,通过在在均衡服务器中选择目标机为HTTP均衡服务器I,就把相应数据包中目标MAC地址改成:14 14 14 5a 5b 5c,继续发到本局域网中;
⑶HTTP均衡服务器I收到此包后,发现是自己的MAC地址,又发现是自己本地地址,则收取并进行处理,并把包信息传到NGINX服务中;
⑷NGINX系统根据配制查找本地路径上的DataFile目录,找到,但这个目录其实是网上的一个分布式文件系统,并在这个文件系统根目录寻找X.aiv这个影像文件;
(5)找到影像文件后,并通过来源地址形成数据返回包,并把包直接发到客户的机器上,客户就可收到这个文件数据;
(6)并在每台HTTP均衡服务器上配制本地虚拟路径DataFile目录,以指向分布式文件系统。
[0017]数据库数据访问过程如图3所示,具体为:
(I)客户通过HTTP协议发送GET请求,比如为:10.10.10.l\business\login.html的一个页面;
⑵LVS.DR均衡器收到这个数据包后,通过在在均衡服务器中选择目标机为HTTP均衡服务器I,就把相应数据包中目标MAC地址改成:14 14 14 5a 5b 5c,继续发到本局域网中;
⑶HTTP均衡服务器I收到此包后,发现是自己的MAC地址,又发现是自己本地地址,则收取并进行处理,并把包信息传到NGINX服务中;
⑷NGINX系统根据配制查找本地路径,发现非本地路径,则找到反向代理,代理中设置了多台处理这个请求的应用服务地址,通过均衡策略,获得了 WEB应用服务器1-1,并通过反向代理,向WEB应用服务器1-1转发请求,转发时变更为自身以太网IP地址,并把目标地址和端口设为WEB应用服务器1-1的地址和端口 ;
(5)WEB应用服务器1-1对发过来的请求进行处理,并根据应用配制可访问相关数据库数据,处理后组成请求回执,并回发给HTTP均衡服务器I ;
(6)HTTP均衡服务器I再通过源地址,直接返回给客户回执数据。
[0018]本实施例数据文件通过LVS.DR进行均衡,通过对IPVS模块设置IP绑定,可以做到IP级均衡策略,同时通过NGINX对独立文件夹中文件为本地访问,可以对数据文件即时返回,并且把数据直接返回到客户,很好的解决均衡设备的网络瓶颈问题;对数据库数据通过NGINX进行反向代理并均衡到相应的应用服务器,应用服务通过分布式数据库,提供数据支持,这种均衡由于是在SESS1N级的,无需使用共享存储来共享SESS1N的值,只需要根据SESS1N自动粘性的连接到相应的应用服务器即可,从而从整体上减小了可能出现的共享SESS1N而造成的瓶颈。
[0019]除上述实施例外,本发明还可以有其他实施方式。凡采用等同替换或等效变换形成的技术方案,均落在本发明要求的保护范围。
【权利要求】
1.一种基于大型网站组合均衡的方法,其特征在于:按以下步骤进行: (-)对大型网站内容进行分类,分成文件数据和数据库数据,其中文件数据是用文件系统直接管理的数据,数据库数据是在数据库系统进行管理的数据; ㈡设置至少3台均衡量服务器来做均衡,其中I台为LVS.DR均衡服务器,另外至少2台为HTTP均衡服务器,每台HTTP均衡服务器至少连接2台应用服务器,设置一个分布式文件系统和一个分布式数据库; (Ξ)对划分的不同的数据类型分别进行存储,其中文件数据存储在分布式文件系统中,数据库数据存储在分布式数据库中,其中,文件数据访问过程具体为: ⑴客户通过HTTP协议发送GET请求; ⑵LVS.DR均衡服务器收到这个数据包后,在均衡服务器中选择目标机为一个HTTP均衡服务器,并把相应数据包中目标MAC地址改成该HTTP均衡服务器的MAC地址,继续发到本局域网中; ⑶该HTTP均衡服务器收到步骤⑵中相应数据包后,发现是自己的MAC地址,又发现是自己本地地址,则收取并进行处理,并把包信息传到NGINX服务中; ⑷NGINX系统根据配制查找本地路径上的DataFile目录,找到,但这个目录其实是网上的一个分布式文件系统,并在这个文件系统根目录寻找X.aiv这个影像文件; (5)找到影像文件后,并通过来源地址形成数据返回包,并把包直接发到客户的机器上,客户就收到这个文件数据; (6)在每台HTTP均衡服务器上配制本地虚拟路径DataFile目录,以指向分布式文件系统; 其中,数据库数据访问过程具体为: ⑴客户通过HTTP协议发送GET请求; ⑵LVS.DR均衡服务器收到这个数据包后,在均衡服务器中选择目标机为一个HTTP均衡服务器,并把相应数据包中目标MAC地址改成该HTTP均衡服务器的MAC地址,继续发到本局域网中; ⑶该HTTP均衡服务器收到步骤⑵中相应数据包后,发现是自己的MAC地址,又发现是自己本地地址,则收取并进行处理,并把包信息传到NGINX服务中; ⑷NGINX系统根据配制查找本地路径,发现非本地路径,则找到反向代理,代理中设置了多台处理这个请求的应用服务地址,其中一台应用服务器通过反向代理向其自己转发请求,转发时变更为自身以太网IP地址,并把目标地址和端口设为该应用服务器的地址和端P ; (5)该应用服务器对发过来的请求进行处理,并根据应用配制访问分布式数据库相关数据,处理后组成请求回执,并回发给相应的HTTP均衡服务器; (6)相应的HTTP均衡服务器再通过源地址,直接返回给客户回执数据。
2.如权利要求1所述的基于大型网站组合均衡的方法,其特征在于:所述均衡量服务器、应用服务器、分布式文件系统以及分布式数据库具体部署为: ⑴将均衡量服务器全部安装LINUX应用系统,所有均衡量服务器都在同一网段内;⑵在LVS.D均衡服务器上安装LVS.DR服务端,即IP_VS模块,并设置两个IP,其中一个IP用于运维使用,另一个IP为均衡VIP ; ⑶在HTTP均衡服务器上安装LVS.DR的客户端,分配配制运维使用的端口,同时配制LVS IP都为相同的IP,并通过arp_ignore和arp_announce指令来对ARP进行抑制,以使数据包在这个网段中能够正常流转; ⑷在HTTP均衡服务器上安装NGINX V1.0中间件,设置反向代理与均衡,并通过nginx.conf配制文件设置指定目录和服务器均衡列表; (5)在每台均衡量服务器上配制本地虚拟路径DataFile目录,以指向分布式文件系统; (6)在NGINX所对应的服务器列表中的每台应用服务都通过中间件,再与分布式数据库相连,使应用服务器群通过多个NGINX均衡来提供服务。
【文档编号】H04L29/08GK104486402SQ201410765430
【公开日】2015年4月1日 申请日期:2014年12月11日 优先权日:2014年12月11日
【发明者】徐烨 申请人:江苏爱信诺航天信息科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1