Nginx是非常重要的负载均衡中间件,被广泛应用于大型网站架构,下面我就全面来详解Nginx
Nginx
Nginx是一款轻量级的高性能的Web服务器和反向代理服务器,是由俄罗斯的程序设计师Igor Sysoev所开发。
Nginx 处理高并发能力是十分强大的,能经受高负载的考验,有报告表明能支持高达 50,000 个并发连接数。
Nginx特点
由于以下这几点,所以使用Nginx非常火,在互联网项目中广泛应用。
-
相较于 Apache具有占有内存少、稳定性高、并发能力强等优势;
-
Nginx 使用基于事件驱动架构,使得其可以支持数以百万级别的 TCP 连接;
-
高度的模块化、扩展性好、和自由软件许可证、使得第三方模块层出不穷;
-
Nginx 是一个跨平台服务器,可以运行在 Linux、Windows、Mac OS 等操作系统上。
Nginx功能应用
1.正向代理
正向代理最大的特点是:客户端非常明确要访问的服务器地址,服务器只清楚请求来自哪个代理服务器,而不清楚来自哪个具体的客户端,正向代理模式屏蔽或者隐藏了真实客户端信息。
例如:在大陆访问www.google.com,我们需要一个代理服务器,我们通过代理服务器去访问谷歌,这个过程就是正向代理。
来看个示意图:
我们可以通过这种方式,访问原来无法访问的资源,比如:Google。
2.反向代理
反向代理,客户端对代理是无感知的,因为客户端不需要任何配置就可以访问,我们只需要将请求发送到反向代理服务器。
来看个示意图:
由反向代理服务器去选择目标服务器获取数据后,在返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服