目录

 

参考文章

一.Nginx是什么:

二.为什么使用Nginx?

         3.1  为什么使用Nginx而不是继续使用tomcat?

三.Nginx的应用场景


一.Nginx是什么:

1.1 Nginx的产生:

Apache不支持高并发的服务器。  

1.2 Nginx的特点: 

  • Nginx 使用基于事件驱动架构,使得其可以支持数以百万级别的 TCP 连接。
  • Nginx 是一个跨平台服务器,可以运行在 Linux、Windows、Mac OS 等操作系统上。

1.3 Nginx的概念:

 1.Nginx 是一款自由、开源、高性能的 HTTP 服务器和反向代理服务器;同时也是一个 IMAP、POP3、SMTP 代理服务器。

 2.Nginx 可以作为一个 HTTP 服务器进行网站的发布处理,另外 Nginx 可以作为反向代理进行负载均衡的实现。

补充说明:(代理的概念)

代理即一个代表,此时涉及到俩个角色,一个是被代理对象,一个是目标对象

eg: 客人到 adidas 专卖店买了一双鞋,这个专卖店就是代理,被代理角色就是 adidas 厂家,目标角色就是用户

1.4 正向代理

内容:最大的特点在于客户端非常明确的想要访问的服务器地址,服务器不请求客户端的来源。

栗子  : 正向代理其实在我们生活中非常常见,比如我们现在在百度上直接访问某个网址。 

总结:正向代理,"它代理的是客户端",是一个位于客户端和原始服务器之间的服务器,,客户端向代理发送一个请求并指定目标(原始服务器)。然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。 正向代理隐藏了用户信息。

用途:google搜索,可以记录上网行为,对外隐藏用户信息

1.5 反向代理

内容:Nginx 接收到来自多个客户端给服务器发送的请求后,Nginx 将按照一定的规则分发给业务处理的服务器。Nginx 在其中扮演了一个反向代理的角色。反向代理隐藏了服务器信息。

栗子:某宝上很多功能都是通过Nginx 来反向代理的,并且通过封装 Nginx 和其他的组件之后起了个高大上的名字:Tengine。

作用:保证内网安全,通过反向代理服务器来优化网站的负载

1.6 项目场景

在实际项目操作时,正向代理和反向代理很有可能会存在同一个应用场景中,正向代理代理客户端的请求去访问目标服务器,反向代理了多台真实的业务处理服务器。

1.7 正向代理和反向代理的区别

正向代理:

nginx499是什么意思 nginx什么意思中文_nginx499是什么意思

 

 

反向代理:

nginx499是什么意思 nginx什么意思中文_负载均衡_02

 

1.8 负载均衡

Nginx 扮演了反向代理服务器的角色,它是依据什么样的规则进行请求分发的呢?不用的项目应用场景,分发的规则是否可以控制呢?

Nginx 反向代理服务器接收到的客户端请求数量,就是我们说的负载量。负载量按照一定的规则分发到不同的服务器处理的规则,就是一种均衡规则。

所以将服务器接收到的请求按照规则分发的过程,称为负载均衡。

负载均衡硬件负载均衡和软件负载均衡两种。

硬件负载均衡也称为硬负载,如 F5 负载均衡,相对造价昂贵成本较高。优点是在数据的稳定性安全性等等有好的保障,比如移动 

软件负载均衡:利用现有的技术结合主机硬件实现的一种消息队列分发机制。

二.为什么使用Nginx?

举个栗子:

上传图片这个功能,在并发量小的情况下,用户其实是直接访问tomcat服务器,然后服务器再将消息返回给用户。为了解决并发这个问题,我们可以使用负载均衡。也就是新增几个tomcat服务器,当我们要访问这个图片的时候,tomcat1正好在工作,所以访问的请求就交给其他的tomcat操作,而tomcat之间的数据没有进行同步,所以就发生了我们要请求的图片找不到。为了解决上面这种情况我们可以使用分布式,搭建一个图片服务器。不管连接的是那个服务器我们都将图片上传到图片服务器上。

 

3.1  为什么使用Nginx而不是继续使用tomcat?

         原因:nginx常用做静态内容服务和代理服务器,用户请求nginx 这台服务器上的资源,Nginx 将其转发给配置在nginx中的应用服务(tomcat等),tomcat 的webapp里面可以放java 程序的war 包等。          

三.Nginx的应用场景

  • 1、 Nginx是一个http服务,可以独立提供http服务。可以做网页静态服务器。
  • 2、 虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机。基于端口的,不同的端口基于域名的,不同域名的。
  • 3、 反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。