首頁  >  文章  >  運維  >  nginx優化有哪些

nginx優化有哪些

(*-*)浩
(*-*)浩原創
2019-06-06 14:44:506252瀏覽

Nginx優化有很多種,在這裡推薦兩種方式。

nginx優化有哪些

nginx事件處理模型最佳化

nginx的連接處理機制在不同的作業系統上採用不用的IO模型,在linux下,nginx使用epoll的IO多路復用模型,在freebsd使用kqueue的IO多路復用模型,在solaris使用/dev/pool方式的IO多路復用模型,在windows使用的icop等等。
根據系統類型不同選擇不同的事務處理模型,選擇有「use [ kqueue | rtsig |epool |dev/pool |select |pllo ];」我們使用的是Centos6.5的linux,因此將nginx的事件處理模型調整為epool模型。
1、具體參數如下在最佳化4下邊挨著:

events {
use epoll;
worker_connections 1024;
}

nginx日誌相關最佳化與安全性

1、設定日誌切割腳本並寫入計劃任務

cd /server/scripts/
cat cut_nginx_log.sh
#!/bin/sh
cd /app/logs
mv www_access.log www_access_$(date +%F -d -1day).log
mv bbs_access.log bbs_access_$(date +%F -d -1day).log
mv blog_access.log blog_access_$(date +%F -d -1day).log
/application/nginx/sbin/nginx -s reload
cat >>/var/spool/cron/root>>eof
00 00 * * * /bin/sh /server/scripts/cut_nginx_log.sh >/dev/null 2>&1
eof

不記錄不需要的訪問日誌
對於健康檢查或某些(圖片,js,css)日誌,一般不記錄日誌,因為在統計PV時是按照頁面計算,而且日誌寫入頻繁會消耗磁碟IO,降低伺服器效能。

location ~ .*\.(js|jpg|JPG|jpeg|JPEG|css|bmp|gif|GIF)$ {
access_log off;
}

存取日誌的權限設定
假設日誌目錄為/app/logs,則授權

chown -R root.root /app/logs
chmod -R 700 /app/logs

不需要再日誌目錄給nginx使用者讀取或寫入許可。因為nginx的master進程是root,不要擔心權限不夠寫不進去日誌

更多Nginx相關技術文章,請訪問Nginx使用教程欄目進行學習!

以上是nginx優化有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn