微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Nginx实现简单动静分离

笔者最近在开始学提高web性能方面的知识。本文将介绍使用Nginx做分布式部署,实现静动分离,并且分析性能

静动分离,就是将css、js、jpg等静态资源和jsp等动态资源分开处理,以此提高服务器响应速度,提高性能

下面给出的例子实现了静动分离,其中静态资源,如css、js、jpg等由Nginx服务器处理,直接获取磁盘资源,动态资源,如jsp等由tomcat服务器处理。

首先配置Nginx

Nginx.conf的具体配置如下:


Nginx服务器作为代理服务器,监听80端口,判断如果的访问动态资源,则由监听8080端口的tomcat服务器处理,否则访问本地磁盘html文件夹里的静态资源。

启动Nginx服务器和tomcat服务器,在浏览器访问80端口,查看firefox浏览器的开发者工具,如下:




可以发现,静态资源都是直接从磁盘获取,响应头都有Cache-Control字段,静态资源的请求时间均为0ms。

而直接使用8080端口访问页面,得到如下:


每个资源都需要花1-3ms来获取,而且响应头没有Cache-Control字段。由此可见,动静分离已经实现。

同样使用ab指令进行压力测试,得到结果如下:

静动分离:



无静动分离:


同样可以看到实现静动分离的版本的性能比较好,将完成所有请求的总时间*1000(因为数值太小)、吞吐率、传输率制作成条形图对比如下:

性能高低显而易见的。

上述内容只是Nginx最简单的使用而已,Nginx提高性能内容还有很多,包括缓存等等。笔者会持续学习,更新博客



版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐