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)動靜分離&高併發處理(本期)