01 JAN

6种实现负载均衡技术的方式。为什么要做动静分离?

负载均衡(Load Balance)是集群技术(Cluster)的一种应用,可以将工作任务分摊到多个处理单元,从而提高并发处理能力,有利于提升中大型网站的性能。接下来小编就为大家介绍6种实现负载均衡技术的方式:

1. http重定向协议实现负载均衡

根据用户的http请求计算出一个真实的web服务器地址,并将该web服务器地址写入http重定向响应中返回给浏览器,由浏览器重新进行访问。该方式比较简单,但性能较差。

2. 【协议层】dns域名解析负载均衡

在DNS服务器上配置多个域名对应IP的记录。该方式直接将负载均衡的工作交给了DNS,为网站管理维护省掉了很多麻烦,访问速度快,有效改善性能。

3. 【协议层】反向代理负载均衡

反向代理服务器在提供负载均衡功能的同时,管理着一组web服务器,根据负载均衡算法将请求的浏览器访问转发到不同的web服务器处理,处理结果经过反向服务器返回给浏览器。该方式部署简单,但是web 服务器地址不能直接暴露在外,不需要使用外部IP地址,而反向代理服务作为沟通桥梁就需要配置双网卡、外部内部两套IP地址。

4. 【网络层】IP负载均衡

在网络层通过修改目标地址进行负载均衡。该方式在响应请求时速度较反向服务器负载均衡要快,但是,当请求数据较大(大型视频或文件)时,速度反应就会变慢。

5. 【链路层】数据链路层负载均衡

在数据链路层修改Mac地址进行负载均衡,负载均衡服务器的IP和它所管理的web 服务群的虚拟IP一致。它不需要负载均衡服务器进行地址的转换,但是对负载均衡服务器的网卡带宽要求较高。

6. F5

F5的全称是F5-BIG-IP-GTM,是最流行的硬件负载均衡设备,其并发能力达到百万级。该方式能够实现多链路的负载均衡和冗余,可以接入多条ISP链路,在链路之间实现负载均衡和高可用。

为什么要做动静分离?

Nginx是当下最热的Web容器,网站优化的重要点在于静态化网站,网站静态化的关键点则是是动静分离,动静分离是让动态网站里的动态网页根据一定规则把不变的资源和经常变的资源区分开来,动静资源做好了拆分以后,我们则根据静态资源的特点将其做缓存操作。

让静态的资源只走静态资源服务器,动态的走动态的服务器

Nginx的静态处理能力很强,但是动态处理能力不足,因此,在企业中常用动静分离技术。

对于静态资源比如图片,js,css等文件,我们则在反向代理服务器nginx中进行缓存。这样浏览器在请求一个静态资源时,代理服务器nginx就可以直接处理,无需将请求转发给后端服务器tomcat。

若用户请求的动态文件,比如servlet,jsp则转发给Tomcat服务器处理,从而实现动静分离。这也是反向代理服务器的一个重要的作用。