什么是Nginx?
Nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;Nginx可以作为一个HTTP服务器进行网站的发布处理,另外Nginx可以作为反向代理进行负载均衡的实现。
Nginx同Apache一样都是一种WEB服务器。基于REST架构风格,以统一资源描述符(Uniform Resources Identifier)URI或者统一资源定位符(Uniform Resources Locator)URL作为沟通依据,通过HTTP协议提供各种网络服务。
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。
服务器的类型:
1、Web服务器:提供Http的访问,例如Nginx、Apache、IIS等,虽然Tomcat也能够实现,但这并不是他的主要功能,而且性能也远不如专门的Web服务器;
2、应用程序服务器:能够用于应用程序的运行;
3、代理服务器:代理服务器通常是客户端访问的一种行为,在整个客户端访问服务器的过程中有着重要的作用;
4、反向代理
5、后台服务器
6、CDN缓存服务器:它是缓存服务器的角色,而且是反向代理的应用,在网站部署的时候,他算是一种策略,对于远距离访问的解决方案。
正向代理:
简单来说,比如我们因为一些原因需要访问国外的网站时,会出现无法访问,此时我们需要一些翻qiang软件来代理访问,翻qiang软件就相当于是一个代理服务器,代替我们的客户端去访问,并将得到的数据信息返回到客户端。
看图理解:
正向代理模式最大的特点:
客户端非常明确要访问的服务器地址,而服务器只清楚请求来自哪个代理服务器,不会具体查询请求来自哪个客户端
正向代理模式屏蔽或者隐藏了客户端的具体信息。
正向代理的用途:
(1)访问原来无法访问的资源,如Google
(2) 可以做缓存,加速访问资源
(3)对客户端访问授权,上网进行认证
(4)代理可以记录用户访问记录(上网行为管理),对外隐藏用户信息
反向代理:
服务器接收到客户端的请求,将请求按照一定的规则分发给后端的具体的服务器进行处理,然后再将得到的响应信息返回到客户端。
看图:
在反向代理的过程中,客户端必须设置正向代理服务器的IP和代理程序的端口。
客户端感知不到反向代理服务器的存在,并不知道自己访问的是一个代理。
反向代理,代理的时服务器,主要用于服务器集群分布式部署的情况下,隐藏了服务器信息。
反向代理的作用:
(1)保证内网的安全,通常将反向代理作为公网访问地址,Web服务器是内网
(2)负载均衡,通过反向代理服务器来优化网站的负载
Nginx的特点:
1、跨平台
2、配置简单
3、高并发连接:能够支持高达 50,000 个并发连接数的响应
4、网络依赖性低,理论上只要能够ping通就可以实施负载均衡,而且可以有效区分内网、外网流量。
5、内存消耗小、成本低廉、节省带宽、稳定性高。。。等。。。
下一章:Nginx安装部署