原创

Nginx_动静分离、高可用


一、动静分离

为了加快网站的解析速度,可以把动态页面和静态页面由不同的服务器来解析,加快解析速度,降低原来单个服务器的压力。 在这里插入图片描述 当需要访问动态资源(例如jsp,servlet)的时候Nginx就会访问tomcat,当只需要访问静态资源(HTML,CSS,JavaScript)的时候就仅访问单独的静态服务器。

Nginx动静分离简单的来说就是把动态和静态请求分开,不能理解成只是单纯的把动态页面和静态页面进行物理分离。严格意义上来说应该是动态请求和静态请求分开,可以理解为使用Nginx处理静态页面,tomcat处理动态页面,动静分离从目前角度来说实现方式大致分为两种:

  • 一种是将静态文件独立成单独的域名,放在独立的服务器上,也是目前主流推崇的方案。
  • 另一种方式是将动态文件和静态文件混合在一起发布,通过Nginx分开。

配置使用nginx访问Linux中的静态资源:

1、准备工作: 在根目录下创建data目录,其中分别创建html、image目录,其中分别存放静态网页和图片资源。 (在此,Linux计算机就充当静态资源服务器的角色,我们通过Nginx进行访问。) 在这里插入图片描述 上传html页面和图片到html、image目录中。

2、通过修改nginx.conf配置文件完成静态资源访问配置 在这里插入图片描述 (如上配置通过location后面的后缀就可以访问Linux中data文件夹中的对应的静态资源,其中/image/配置中的autoindex on;配置是将/data/image/目录显示在浏览器上。)

3、测试访问 在这里插入图片描述 图片资源访问: 在这里插入图片描述 点击A.jpg即可查看图片,次页面就是因为autoindex on;配置产生的。 在这里插入图片描述 图片查看成功。

二、Nginx的高可用配置

什么是Nginx的高可用?

在使用Nginx进行服务器的负载均衡配置的时候我们了解到,当参与负载均衡的某个服务器宕机之后,Nginx会将宕机的服务器剔除负载均衡的队列。此时就不会因为某个服务器宕机而导致某些服务不可获取,称之为服务器的高可用。 而Nginx的高可用就是为了解决另外一个问题:如果进行反向代理和负载均衡的Nginx服务器宕机了怎么办?此时就没有服务器来进行请求路由的分发和控制,所以就需要高可用的Nginx集群来避免这种情况。

Nginx高可用配置方式概述: 与服务器的集群部署相同,在此,我们采用多个Nginx集群的方式来完成高可用配置。例如,我们准备两个Nginx服务器,一个主Nginx服务器,一个备用的Nginx服务器。当主服务器宕机之后,就会自动切换到备用服务器上进行正常工作,如此就实现了Nginx的高可用配置。 其中,想要完成主服务器宕机自动切换到备用服务器的操作,我们需要在两台服务器中都安装一个名为keepalived的软件。 keepalived会配置一个虚拟的ip地址,然后将虚拟ip与主副Nginx服务器的ip进行访问,然后还可以设置连接时间,当Nginx服务器宕机,连接超时时,就自动将虚拟ip连接到备用服务器上进行工作。此时对于客户端来说,访问的ip地址是不变的,但是背后进行请求操作的Nginx服务器是发生改变的。

Nginx
  • 作者:德玛西亚!(联系作者)
  • 发表时间:2020-02-26
  • 版权说明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)
  • 公众号转载:请在文末添加作者公众号二维码

留言板

留言