Nginx+Tomcat实现动静分离

什么是动静分离

动静分离是让动态网站里的动态网页根据一定规则把不变的资源和经常变的资源区分开来,动静资源做好了拆分以后,我们就可以根据静态资源的特点将其做缓存操作,这就是网站静态化处理的核心思路
动静分离简单的概括是:动态文件与静态文件的分离。
总结:静态资源一个服务器(css、img、js)、动态资源一个服务器(后端代码)。

为什么要使用动静分离

在我们的软件开发中,有些请求是需要后台处理的(如:.jsp,.do等等),有些请求是不需要经过后台处理的(如:css、html、jpg、js等等文件),这些不需要经过后台处理的文件称为静态文件,否则动态文件。因此我们后台处理忽略静态文件。这会有人又说那我后台忽略静态文件不就完了吗。当然这是可以的,但是这样后台的请求次数就明显增多了。在我们对资源的响应速度有要求的时候,我们应该使用这种动静分离的策略去解决。

动静分离将网站静态资源(HTML,JavaScript,CSS,img等文件)与后台应用分开部署,提高用户访问静态代码的速度,降低对后台应用访问。这里我们将静态资源放到nginx中,动态资源转发到tomcat服务器中。

因此,动态资源转发到tomcat服务器我们就使用到了前面讲到的反向代理了。

搭建动静分离原理

静态服务器:使用 nginx 实现静态服务器
动态服务器:使用 Tomcat 实现动态服务器
nginx 实现静态服务器比 Tomcat 实现动态服务器性能要高非常多。访问速度快。

动静分离的原理很简单,通过location对请求url进行匹配即可,具体配置如下:

server {
            listen       80;
            server_name  static.xiaoming.com;
            location /static/img {
                root D:/;
                index  index.html index.htm;
            }
            

        }    

        server {
            listen       80;
            server_name  www.xiaoming.com;
            location / {
                proxy_pass http://127.0.0.1:8080;
                index  index.html index.htm;
            }
            

        }    
如何区分是静态资源请求和动态资源请求。

使用域名区分静态资源请求与动态资源请求

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值