Nginx-动静分离&高并发处理
演示环境:
系统版本:CentOS Linux release 7.7.1908 (Core)
nginx版本:nginx/1.16.1
当然讲解还是官方最棒:英语和俄语大佬请点击这里移步官网
一、动静分离简介
1.什么是动静分离
区分动态请求和静态请求,将动静分流到不同的服务器。
2.为什么要做动静分离
- tomcat在处理静态资源时效率不高,默认情况下所有资源都由tomcat处理,
会导致Web应用响应慢,占用系统资源, - tomcat还存在是因为其对动态资源处理性能很好,nginx处理静态很好。
3.怎么实现动静分离
- 将静态资源交由Nginx处理,动态资源仍由tomcat处理,实现动静分离实际上就是把Nginx作为静态资源服务器
二、动静分离配置
1. IP地址39开头的配置:
- 安装tomcat
↑↑↑具体方法点击查看↑↑↑ - 修改默认目录
vim /usr/share/tomcat/webapps/ROOT/index.jsp
2. IP地址为49的配置:
存放静态资源的目录
mkdir -p /www/tianyao/static
在文件 /etc/nginx/conf.d/ 创建一个xx.conf文件,写入一下内容
upstream test_server {
server 39.102.36.x:8080; #这里填写你自己的tomcat服务器
}
server {
listen 80;
server_name blog.tianyao.site;
location / {
proxy_pass http://test_server;
}
location ~ .*\.(js|css|ico|png|jpg|eot|svg|ttf|woff){
root /www/tianyao/static
}
}
3.测试
- 直接访问
在IP 39开头的服务器的 /usr/share/tomcat/webapps/ROOT/文件夹中下载tomcat.css文件
上传到IP地址49开头的服务器 /www/tianyao/static 文件夹中,并上传一张本地图片,名称修改为tomcat.png
注意: - 如果上传后还访问不到,请查看并修改文件权限为所有人都能读取
- 如果你不会上传文件,点击这里查看上传方法。
- 我这里为了效果明显在两台服务器上完成的,可以在一台服务器上操作。
三、高并发处理
常见处理办法:
负载均衡:用集群,代替整个服务器
动静分离:使用Nginx、CDN
CDN讲解
缓存:以空间换时间,提高系统效率
限流:流量控制,将超过的流量放入队列中(今年的网课软件,排队进入),如果队列满了,直接将流量拒绝掉(比如:看直播回复你主播人气爆棚稍后再试)
降级:服务降载。日志记录等级降低;临时关闭一些暂时不影响的业务,如双十一那一天不能退货,不能还花呗等都是服务器降级操作。
推荐大家看看:《亿级流量网站架构核心技术》
这个在CSDN资源中可以下载电子版,也可以私聊我发送给你。
四、Nginx相关文章链接
(1)Nginx环境搭建
(2)HTTP服务器
(3)HTTPS服务配置详解
(4)反向代理
(5)负载均衡
(6)动静分离&高并发处理(本期)