浅谈Nginx负载均衡与F5的区别

国际新闻 阅读(907)

前锋JAVA发展学院我想昨天分享

JS

前言

我最近在负责一个小组网站时使用过Nginx和F5。如图所示,负载均衡器F5是处理外部请求的第一个“墙”。将请求分发到Web服务器后,Web服务器上的Nginx。处理完成后,静态内容直接访问本地门户,动态数据通过反向代理指向内网服务。

事实上,Nginx和F5都可以用作网站负载平衡。两者有什么区别?我将谈谈Nginx和F5之间的一些区别。

目前,许多网站或应用程序旨在平衡高并发数据请求。不差钱的本地客户通常直接购买F5硬件设备作为其负载均衡器。由于其原因,它功能强大,不仅包括负载均衡还包括应用程序切换,会话切换,状态监控,智能网络地址转换,通用持久性,响应错误处理,IPv6网关,高级路由,智能端口镜像,SSL加速,智能HTTP压缩,TCP优化,第7层速率整形,内容缓冲,内容转换,连接加速,缓存,cookie加密,选择性内容加密,应用程序攻击过滤,拒绝服务(DoS)攻击,SYN Flood保护,防火墙过滤等。它是非常强大的吗?当然,价格也是人们非常“心肠”。而且一些预算并不高。在网站的初步开发中,Nginx的软负载也可以满足其数据分发的需求。我们先来看看Nginx如何满足我们的负载平衡需求:/p>

首先,什么是Nginx:

Nginx:高性能HTTP和反向代理服务器,支持IMAP/POP3/SMTP代理服务器。目前被许多网站用作其HTTP软负载均衡器。高效的性能,良好的稳定性,丰富的功能集,示例配置文件和低系统资源消耗在大型互联网公司中越来越受欢迎。例如,腾讯,淘宝,新浪等大型门户网站和商业网站使用Nginx进行HTTP网站的数据分发。

其次,Nginx的特点是:

1.在网络的第7层工作,你可以为http应用程序做一些分流策略,比如域名和目录结构;

2,Nginx对网络的依赖性相对较小;

3,Nginx的安装和配置比较简单,测试更方便;

4,可承受高负荷压力和稳定性,一般可支持次以上;

5,Nginx可以通过端口检测服务器的内部故障,例如根据服务器处理网页返回的状态码,超时等,并将重新提交请求以将错误返回给另一个节点,但是缺点是它不支持url检测;

6,Nginx异步处理请求可以帮助节点服务器减少负载;

7,Nginx可以支持http和Email;

三,原则

Nginx使用反向代理技术。代理服务器接受互联网上的连接请求,然后将请求转发到内部网络上的服务器,并将从服务器获得的结果返回给请求在互联网上连接的客户端。代理服务器在外部充当服务器。反向代理负载均衡技术是以反向代理方式将来自Internet的连接请求动态转发到内部网络上的多个服务器,实现负载均衡。

具体来说,它是如何运行的?实际上,当Nginx启动时,其工作进程由配置文件初始化。主进程处理特权操作,例如配置文件中的读取和端口绑定,然后创建一小组子进程。这些子进程处理请求,同时缓存加载器将缓存加载到内存中,然后退出,确保资源开销始终保持较低。

可以看出,创建的子进程实际上负责所有工作,处理网络连接,硬盘读写操作和上游服务器通信。

如图所示:masert进程是它的主线程,工作进程顾名思义,“我正在专门工作”,截图的过程还比较少,因为这是他自己的服务器,没有多少服务,在实际业务中可能有数十个工作流程,这是非常壮观的。

Nginx的推荐配置是工作进程对应于CPU核心,以确保有效使用硬件资源。

一旦NGINX被服务,只有工作进程忙,并且每个工作进程以非阻塞方式处理多个连接,减少了上下文切换的数量。

每个工作进程都是单线程的,并且独立运行,负责获取新连接并处理它们。进程通过共享内存进行通信,例如缓存数据,ession持久性数据和其他共享资源。

四,F5负载均衡功能

事实上,我看到了Nginx的原理和功能。你认为不再需要F5吗?当然,F5是最古老的负载均衡器。它以其强大的功能和稳定的性能而闻名。许多功能实际上是软负载。赶到。

F5 BIG-IP用作HTTP负载均衡器的主要功能:

1. F5 BIG-IP提供12种灵活的算法来将所有流量分配到每个服务器,而对于用户来说,它只是一个虚拟服务器。

2. F5 BIG-IP可以确认应用程序是否可以将相应的数据返回给请求。如果F5 BIG-IP后面的服务器有服务停止,崩溃等,F5将检查它并将服务器识别为关闭,以便用户的访问请求不会被传输到故障服务器。这样,只要其他服务器正常,用户的访问权限就不会受到影响。一旦停机时间得到修复,F5 BIG-IP将自动验证应用程序是否能保证正确响应客户的请求并恢复交付给服务器。

3. F5 BIG-IP具有动态会话的会话保留功能。作者还使用网站中的F5通过F5绑定用户IP和Session,使会话保持一致。

4,F5 BIG-IP的iRules功能可以做HTTP内容过滤,根据不同的域名,URL,向不同服务器传输请求。

五,两者的比较

F5,硬件

优点:可直接通过智能交换机实现,具有较强的处理能力,与系统无关,具有较强的负载性能,更适用于大量设备,流量大,应用简单。

缺点:成本高,除了设备价格高,而且配置冗余,很难想象后者服务器做集群,但最关键的负载均衡设备是单点配置,无法有效掌握服务器和应用状态。

硬件负载均衡,一般不管实际的系统和应用状态,但只能从网络层判断,所以有时系统处理能力不再,但网络可能仍有时间做出反应(这很典型,如应用服务器背后的内存占用了很多,但还没有完全用尽。如果网络传输量不大,可能无法在网络层反映出来。

Nginx,软负载

优点:基于系统和应用程序的负载均衡,可以根据系统和应用程序的状态更好地分配负载。这对于复杂的应用非常重要,性价比高,事实上,如果使用F5和其他硬件产品的一些服务器有点浪费,而且使用软件更具成本效益,因为服务器也可以运行应用程序,集群等。

缺点:负载容量受服务器本身性能的影响。性能越好,负载能力越大。

结论

事实上,正如我最初所说,如果你没有钱,你可以直接去F5,并使用Nginx作为负载平衡和web容器。处理大量数据的用户根本没有问题。如果预算不够,Nginx目前可以满足大多数用户的需求,当然不能迷信负载均衡,对于我们的IT工作者,程序,SQL和其他与数据处理相关的业务逻辑,无论是架构或者代码或模型的合理性,它的重要性总是高于中间件,中间件必须是每个IT人员的共鸣。

收集报告投诉

JS

前言

我最近在负责一个小组网站时使用过Nginx和F5。如图所示,负载均衡器F5是处理外部请求的第一个“墙”。将请求分发到Web服务器后,Web服务器上的Nginx。处理完成后,静态内容直接访问本地门户,动态数据通过反向代理指向内网服务。

事实上,Nginx和F5都可以用作网站负载平衡。两者有什么区别?我将谈谈Nginx和F5之间的一些区别。

目前,许多网站或应用程序旨在平衡高并发数据请求。不差钱的本地客户通常直接购买F5硬件设备作为其负载均衡器。由于其原因,它功能强大,不仅包括负载均衡还包括应用程序切换,会话切换,状态监控,智能网络地址转换,通用持久性,响应错误处理,IPv6网关,高级路由,智能端口镜像,SSL加速,智能HTTP压缩,TCP优化,第7层速率整形,内容缓冲,内容转换,连接加速,缓存,cookie加密,选择性内容加密,应用程序攻击过滤,拒绝服务(DoS)攻击,SYN Flood保护,防火墙过滤等。它是非常强大的吗?当然,价格也是人们非常“心肠”。而且一些预算并不高。在网站的初步开发中,Nginx的软负载也可以满足其数据分发的需求。我们先来看看Nginx如何满足我们的负载平衡需求:/p>

首先,什么是Nginx:

Nginx:高性能HTTP和反向代理服务器,支持IMAP/POP3/SMTP代理服务器。目前被许多网站用作其HTTP软负载均衡器。高效的性能,良好的稳定性,丰富的功能集,示例配置文件和低系统资源消耗在大型互联网公司中越来越受欢迎。例如,腾讯,淘宝,新浪等大型门户网站和商业网站使用Nginx进行HTTP网站的数据分发。

其次,Nginx的特点是:

1.在网络的第7层工作,你可以为http应用程序做一些分流策略,比如域名和目录结构;

2,Nginx对网络的依赖性相对较小;

3,Nginx的安装和配置比较简单,测试更方便;

4,可承受高负荷压力和稳定性,一般可支持次以上;

5,Nginx可以通过端口检测服务器的内部故障,例如根据服务器处理网页返回的状态码,超时等,并将重新提交请求以将错误返回给另一个节点,但是缺点是它不支持url检测;

6,Nginx异步处理请求可以帮助节点服务器减少负载;

7,Nginx可以支持http和Email;

三,原则

Nginx使用反向代理技术。代理服务器接受互联网上的连接请求,然后将请求转发到内部网络上的服务器,并将结果从服务器返回给请求互联网连接的客户端。此时,代理服务器充当外部的服务器。反向代理负载均衡技术是将来自Internet的连接请求动态转发到内部网络上的多个服务器,以反向代理的形式进行处理,从而达到负载均衡的目的。

实际上,当启动Nginx时,其工作进程由配置文件初始化。主进程在配置文件中处理权限操作(如读取和端口绑定),然后创建一小组子进程以处理这些子进程的请求。同时,缓存加载程序加载硬盘。在内存中缓存,然后退出以确保资源开销保持较低。

如您所见,创建的子流程实际上负责所有工作,处理网络连接,硬盘读写和上游服务器通信。

如图所示,masert进程是它的主线程,而工作进程正如其名称所暗示的那样,“我正在专门工作”。由作者截取的过程仍然比较小,因为它是我自己的服务器,没有太多的服务,实际业务中可能有几十个工作进程,或者相当壮观。

Nginx推荐的配置是工作进程对应于CPU内核,以确保有效使用硬件资源。

NGINX服务启动后,只有工作进程忙。每个工作进程以非阻塞方式处理多个连接,这减少了上下文切换的次数。

每个工作进程都是单线程的,并且独立运行,负责获取新连接并处理它们。进程通过共享内存进行通信,例如缓存数据,ession持久性数据和其他共享资源。

四,F5负载均衡功能

事实上,我看到了Nginx的原理和功能。你认为不再需要F5吗?当然,F5是最古老的负载均衡器。它以其强大的功能和稳定的性能而闻名。许多功能实际上是软负载。赶到。

F5 BIG-IP用作HTTP负载均衡器的主要功能:

1. F5 BIG-IP提供12种灵活的算法来将所有流量分配到每个服务器,而对于用户来说,它只是一个虚拟服务器。

2. F5 BIG-IP可以确认应用程序是否可以将相应的数据返回给请求。如果F5 BIG-IP后面的服务器有服务停止,崩溃等,F5将检查它并将服务器识别为关闭,以便用户的访问请求不会被传输到故障服务器。这样,只要其他服务器正常,用户的访问权限就不会受到影响。一旦停机时间得到修复,F5 BIG-IP将自动验证应用程序是否能保证正确响应客户的请求并恢复交付给服务器。

3. F5 BIG-IP具有动态会话的会话保留功能。作者还使用网站中的F5通过F5绑定用户IP和Session,使会话保持一致。

4,F5 BIG-IP的iRules功能可以做HTTP内容过滤,根据不同的域名,URL,向不同服务器传输请求。

五,两者的比较

F5,硬件

优点:可直接通过智能交换机实现,具有较强的处理能力,与系统无关,具有较强的负载性能,更适用于大量设备,流量大,应用简单。

缺点:成本高,除了设备价格高,而且配置冗余,很难想象后者服务器做集群,但最关键的负载均衡设备是单点配置,无法有效掌握服务器和应用状态。

硬件负载均衡,一般不管实际的系统和应用状态,但只能从网络层判断,所以有时系统处理能力不再,但网络可能仍有时间做出反应(这很典型,如应用服务器背后的内存占用了很多,但还没有完全用尽。如果网络传输量不大,可能无法在网络层反映出来。

Nginx,软负载

优点:基于系统和应用程序的负载均衡,可以根据系统和应用程序的状态更好地分配负载。这对于复杂的应用非常重要,性价比高,事实上,如果使用F5和其他硬件产品的一些服务器有点浪费,而且使用软件更具成本效益,因为服务器也可以运行应用程序,集群等。

缺点:负载容量受服务器本身性能的影响。性能越好,负载能力越大。

结论

事实上,正如我最初所说,如果你没有钱,你可以直接去F5,并使用Nginx作为负载平衡和web容器。处理大量数据的用户根本没有问题。如果预算不够,Nginx目前可以满足大多数用户的需求,当然不能迷信负载均衡,对于我们的IT工作者,程序,SQL和其他与数据处理相关的业务逻辑,无论是架构或者代码或模型的合理性,它的重要性总是高于中间件,中间件必须是每个IT人员的共鸣。