- 直播系统开发:基于Nginx与Nginx-rtmp-module
- 卓朗科技技术团队编著
- 866字
- 2020-08-27 22:29:39
1.1 Nginx概述及作用
Nginx同Apache、Tomcat一样,是一种服务器软件。它是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP代理服务器。因此,使用Nginx可以搭建网站,也可以实现负载均衡的功能,还可以作为邮件代理服务器来接收和发送邮件。Nginx 1.9.0以后的版本还可以作为通用的TCP/UDP代理服务器,也可以提供一定的缓存服务功能。
1.1.1 可作为Web服务器
Nginx还是一个高性能的HTTP Web服务器(Web服务器还有Apache、IIS等),它包含了基本的HTTP功能和拓展功能,可以先通过动态/静态内容分离,而后为静态内容(HTML/CSS/JaveScript/图片等)提供HTTP访问功能;而动态内容可以整合代理模块,代理给上游服务器,以支持对外部程序的直接调用或者解析,如FastCGI支持PHP。
1.1.2 可作为反向代理服务器
代理服务器分为正向代理服务器和反向代理服务器。
1.正向代理服务器
正向代理服务器是一个位于客户端与原始服务器之间的服务器。为了从原始服务器中取得数据,客户端向代理服务器发送请求并指定目标(原始服务器),然后,代理服务器向原始服务器转交请求,并将获得的内容返回客户端。
正向代理服务器一般作用在客户端,并且在客户端需要进行相关配置,如图1-1所示。
图1-1
2.反向代理服务器
反向代理服务器作用在服务器端,它在服务器端接收互联网中的连接请求,然后将请求转发给内部网络中的服务器,并将从服务器中得到的结果返回给互联网中请求连接的客户端,如图1-2所示。
反向代理对外是透明的,在客户端不需要任何配置,所以,访问者并不知道自己访问的是一个反向代理服务器。
图1-2
Nginx就是一个反向代理服务器。
反向代理服务器针对Web服务器提供加速功能,所有外部网络要访问服务器的请求都要通过它。反向代理服务器负责接收客户端的请求,然后到源服务器上获取内容,把内容返回给用户,并把内容保存在本地中,以便日后再收到同样的信息请求时,将本地缓存中的内容直接发给用户,以减少后端Web服务器的压力,提高响应速度。因此,Nginx还具有缓存功能。
3.反向代理服务器实现负载均衡
Nginx可通过反向代理服务器来实现负载均衡,以优化网站的负载,如图1-3所示。
图1-3
1.1.3 可作为邮件代理服务器
Nginx可被部署成邮件代理服务器,最早开发Nginx的目的之一就是将其作为邮件代理服务器。