负载均衡技术对比:F5与Nginx
一,Nginx
1,Nginx的特性
Nginx,即engine x,是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。Nginx是目前使用最广泛的HTTP软负载
均衡器。
Nginx的特性有以下几个方面:
* 工作在网络的7层之上,可以针对HTTP应用做一些分流的策略,比如针对域名、目录结构。
* Nginx对网络的依赖比较小;
* Nginx安装和配置比较简单,测试方便;
* 也能够承担高负载压力,稳定,一般能支撑超过1万次的并发;
* Nginx可以通过端口检测到服务器内部的故障;
* Nginx对请求的异步处理可以帮助节点服务器减轻负载;
* Nginx支持HTTP和Email;
* Nginx不支持Session的保持,对Big request header的支持不好;
* Nginx默认只支持两种负载均衡算法:Round-robin和P-hash;
2,Nginx的原理
Nginx的实现,采用的是反向代理技术。代理服务器充当服务器集群的前置,负责接收所有来自用户的请求,然后代理服务器根据负载均衡算法,
将请求分发给服务器集群。服务器集群处理完请求后,将响应信息先发送给反向代理服务器,反向代理服务器再返回给用户。
二,F5
1,什么是硬件负载均衡
直接在服务器和外部网络间安装负载均衡设备,这种设备我们称之为负载均衡器。负载均衡器是一种独立于操作系统的设备,因此整体性能较高,
加上多样化的负载均衡策略,智能化的流量管理,可以达到最佳的负载均衡需求。一般而言,硬件负载均衡技术,在功能和性能上都优于软件负载均衡
技术。
2,什么是F5 BIG-IP LTM
F5 BIG-IP LTM的官方名称叫做本地流量管理器,可以做4-7层负载均衡。F5 BIG-IP LTM功能强大,具有负载均衡、应用交换、会话交换、状态监控、
智能网络、地址转换、通用持续性、响应错误处理、IPv6网关、高级路由、智能端口镜像、SSL加速、智能HTTP压缩、TCP优化、第7层速率整形、内容缓
冲、内容转换、连接加速、高速缓存、Cookie加密、选择性内容加密、应用攻击过滤、拒绝服务(DoS)攻击、SYN Flood保护、防火墙一包过滤、包消毒。
* 负载均衡
* 应用交换
* 会话交换
* 状态监控
* 智能网络
* 地址转换
* 通用持续性
* 响应错误处理
* IPv6网关
* 高级路由
* 智能端口镜像
* SSL加速
* 智能HTTP压缩
* TCP优化
* 第7层速率整形
* 内容缓冲
* 内容转换
* 连接加速
* 高速缓存
* Cookie加密
* 选择性内容加密
* 应用攻击过滤
* 拒绝服务(DoS)攻击
* SYN Flood保护
* 防火墙一包过滤
* 包消毒
3,F5 BIG-IP用作HTTP负载均衡器的主要功能
* F5 BIG-IP提供12种灵活的算法,将所有流量均衡的分配到各个服务器,而面对用户,只是一台虚拟服务器。
* F5 BIG-IP可以确认应用程序能否对请求返回对应的数据。假如F5 BIG-IP后面的某一台服务器发生服务停止、死机等故障,F5会检查出来并将
该服务器标识为宕机,从而不将用户的请求传送到该台发生故障的服务器上。
* F5 BIG-IP具有动态Session的回话保持功能;
* F5 BIG-IP的iRules功能可以做HTTP内容过滤,根据不同的域名、URL,将访问请求传送到不同的服务器。
三,F5与Nginx的对比
1,F5的优点和缺点
优点:可以直接通过智能交换机实现,处理能力更强,而且与系统无关,负载性能强更适用于一大堆设备、大访问量、简单应用。
缺点:成本高,除设备价格昂贵外,而且配置冗余。很难想象后面服务器做一个集群,但最关键的负载均衡设备却是单点配置。无法有效掌握
服务器和应用的状态。
一般来说,硬件负载均衡技术都不管实际系统和应用的状态,而只是从网络层来判断当前的负载。这样带来的问题就是,硬件负载均衡器不能
判断服务器或者应用的状态,有时候服务器或者应用已经高负载了,但是网络还没有问题的话,就会造成误判。
2,Nginx的优点和缺点
优点:Nginx是基于系统和应用的软件负载均衡技术,能够更好的根据系统或者应用的状态来分配负载。
缺点:负载能力受服务器本身性能的影响。服务器性能越好,负载能力越大。
四,负载均衡算法
负载均衡算法有很多种,我们需要根据应用场景,选择合适的负载均衡算法。
1,轮询
2,源地址哈希
3,加权轮询
4,加权随机
5,最小连接
一,Nginx
1,Nginx的特性
Nginx,即engine x,是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。Nginx是目前使用最广泛的HTTP软负载
均衡器。
Nginx的特性有以下几个方面:
* 工作在网络的7层之上,可以针对HTTP应用做一些分流的策略,比如针对域名、目录结构。
* Nginx对网络的依赖比较小;
* Nginx安装和配置比较简单,测试方便;
* 也能够承担高负载压力,稳定,一般能支撑超过1万次的并发;
* Nginx可以通过端口检测到服务器内部的故障;
* Nginx对请求的异步处理可以帮助节点服务器减轻负载;
* Nginx支持HTTP和Email;
* Nginx不支持Session的保持,对Big request header的支持不好;
* Nginx默认只支持两种负载均衡算法:Round-robin和P-hash;
2,Nginx的原理
Nginx的实现,采用的是反向代理技术。代理服务器充当服务器集群的前置,负责接收所有来自用户的请求,然后代理服务器根据负载均衡算法,
将请求分发给服务器集群。服务器集群处理完请求后,将响应信息先发送给反向代理服务器,反向代理服务器再返回给用户。
二,F5
1,什么是硬件负载均衡
直接在服务器和外部网络间安装负载均衡设备,这种设备我们称之为负载均衡器。负载均衡器是一种独立于操作系统的设备,因此整体性能较高,
加上多样化的负载均衡策略,智能化的流量管理,可以达到最佳的负载均衡需求。一般而言,硬件负载均衡技术,在功能和性能上都优于软件负载均衡
技术。
2,什么是F5 BIG-IP LTM
F5 BIG-IP LTM的官方名称叫做本地流量管理器,可以做4-7层负载均衡。F5 BIG-IP LTM功能强大,具有负载均衡、应用交换、会话交换、状态监控、
智能网络、地址转换、通用持续性、响应错误处理、IPv6网关、高级路由、智能端口镜像、SSL加速、智能HTTP压缩、TCP优化、第7层速率整形、内容缓
冲、内容转换、连接加速、高速缓存、Cookie加密、选择性内容加密、应用攻击过滤、拒绝服务(DoS)攻击、SYN Flood保护、防火墙一包过滤、包消毒。
* 负载均衡
* 应用交换
* 会话交换
* 状态监控
* 智能网络
* 地址转换
* 通用持续性
* 响应错误处理
* IPv6网关
* 高级路由
* 智能端口镜像
* SSL加速
* 智能HTTP压缩
* TCP优化
* 第7层速率整形
* 内容缓冲
* 内容转换
* 连接加速
* 高速缓存
* Cookie加密
* 选择性内容加密
* 应用攻击过滤
* 拒绝服务(DoS)攻击
* SYN Flood保护
* 防火墙一包过滤
* 包消毒
3,F5 BIG-IP用作HTTP负载均衡器的主要功能
* F5 BIG-IP提供12种灵活的算法,将所有流量均衡的分配到各个服务器,而面对用户,只是一台虚拟服务器。
* F5 BIG-IP可以确认应用程序能否对请求返回对应的数据。假如F5 BIG-IP后面的某一台服务器发生服务停止、死机等故障,F5会检查出来并将
该服务器标识为宕机,从而不将用户的请求传送到该台发生故障的服务器上。
* F5 BIG-IP具有动态Session的回话保持功能;
* F5 BIG-IP的iRules功能可以做HTTP内容过滤,根据不同的域名、URL,将访问请求传送到不同的服务器。
三,F5与Nginx的对比
1,F5的优点和缺点
优点:可以直接通过智能交换机实现,处理能力更强,而且与系统无关,负载性能强更适用于一大堆设备、大访问量、简单应用。
缺点:成本高,除设备价格昂贵外,而且配置冗余。很难想象后面服务器做一个集群,但最关键的负载均衡设备却是单点配置。无法有效掌握
服务器和应用的状态。
一般来说,硬件负载均衡技术都不管实际系统和应用的状态,而只是从网络层来判断当前的负载。这样带来的问题就是,硬件负载均衡器不能
判断服务器或者应用的状态,有时候服务器或者应用已经高负载了,但是网络还没有问题的话,就会造成误判。
2,Nginx的优点和缺点
优点:Nginx是基于系统和应用的软件负载均衡技术,能够更好的根据系统或者应用的状态来分配负载。
缺点:负载能力受服务器本身性能的影响。服务器性能越好,负载能力越大。
四,负载均衡算法
负载均衡算法有很多种,我们需要根据应用场景,选择合适的负载均衡算法。
1,轮询
2,源地址哈希
3,加权轮询
4,加权随机
5,最小连接