Nginx实现(动静分离)

动静分离应该是听的次数较多的性能优化方案,那先思考一个问题:「「为什么需要做动静分离呢?它带来的好处是什么?」」 其实这个问题也并不难回答,当你搞懂了网站的本质后,自然就理解了动静分离的重要性。先来以淘宝为例分析看看:

当浏览器输入www.taobao.com访问淘宝首页时,打开开发者调试工具可以很明显的看到,首页加载会出现100+的请求数,而正常项目开发时,静态资源一般会放入到resources/static/目录下:

在项目上线部署时,这些静态资源会一起打成包,那此时思考一个问题:「「假设淘宝也是这样干的,那么首页加载时的请求最终会去到哪儿被处理?」」 答案毋庸置疑,首页100+的所有请求都会来到部署WEB服务的机器处理,那则代表着一个客户端请求淘宝首页,就会对后端服务器造成100+的并发请求。毫无疑问,这对于后端服务器的压力是尤为巨大的。

但此时不妨分析看看,首页100+的请求中,是不是至少有60+是属于*.js、*.css、*.html、*.jpg.....这类静态资源的请求呢?答案是Yes

既然有这么多请求属于静态的,这些资源大概率情况下,长时间也不会出现变动,那为何还要让这些请求到后端再处理呢?能不能在此之前就提前处理掉?当然OK,因此经过分析之后能够明确一点:「「做了动静分离之后,至少能够让后端服务减少一半以上的并发量。」」 到此时大家应该明白了动静分离能够带来的性能收益究竟有多大。

一、准备工作

1、在 linux 根目录下新建 static 目录,并在此目录下分别新建 image 目录和 page 目录,在 image 目录中放入准备好的图片 nice.jpg,在 page 目录中放入准备好的页面 a.html

2、在 tomcat 下的 webapps 目录下 新建 txt目录,在 txt目录中放入提前准备好的页面 hello.txt

3、关闭 linux 系统的防火墙或者开放需要被访问的端口

二、具体配置

1、修改 linux 系统中nginx的配置文件 nginx.conf,默认在 /usr/local/nginx/conf 目录下。

将配置文件中server块的内容修改成如下形式:

2、修改配置文件后,启动nginx服务 nginx 访问http://IP地址/路径名称

相关推荐
宁zz14 小时前
乌班图安装jenkins
运维·jenkins
大丈夫立于天地间14 小时前
ISIS协议中的数据库同步
运维·网络·信息与通信
rainFFrain15 小时前
单例模式与线程安全
linux·运维·服务器·vscode·单例模式
xujiangyan_16 小时前
nginx的反向代理和负载均衡
服务器·网络·nginx
@郭小茶17 小时前
docker-compose方式部署docker项目
运维·docker·容器
自由鬼17 小时前
开源虚拟化管理平台Proxmox VE部署超融合
linux·运维·服务器·开源·虚拟化·pve
电星托马斯18 小时前
Linux系统CentOS 6.3安装图文详解
linux·运维·服务器·程序人生·centos
啞謎专家18 小时前
CentOS中挂载新盘LVM指南:轻松扩展存储空间,解决磁盘容量不足问题
linux·运维·服务器
s_little_monster19 小时前
【Linux】进程信号的捕捉处理
linux·运维·服务器·经验分享·笔记·学习·学习方法
一大Cpp19 小时前
Ubuntu与本地用户交流是两种小方法
linux·运维·ubuntu