以下是我個人見解, 不喜勿噴, 如有錯誤, 還望各路大神多多指教
nginx 是乙個高效能的 http 和 反向**伺服器.
主要特點:
1. 占用記憶體比較少
2. 併發能力強
3. 處理靜態頁面效能非常強
nginx由核心跟模組組成
nginx相比apache
1. 高併發響應效能非常好,官方nginx處理靜態檔案併發5w/s
2. 反向**效能強
3. 記憶體和cpu佔用率低(為apache 的 1/5 ~ 1/10)
4. 對後端服務由健康檢查功能
5. 支援php cgi方式和 fastcgi方式
6. 配置**簡潔而且容易上手
安裝配置
nginx啟動:由主程序和工作程序組成
常用命令
這些命令在nginx目錄的/sbin/
下執行
./nginx 啟動
./nginx -s reopen 重啟
./nginx -s stop
ps -ef
| grep nginx 檢視nginx程序
./nginx -v 檢視版本
./nginx -v 檢視版本和詳細引數
借鑑部落格
nginx平滑公升級
將nginx1.10.3公升級成1.12.2
檢視nginx程序
ps -ef
| grep nginx
檢視nginx引數
./nginx/sbin/nginx -v
解壓新版本,進入目錄,複製當前版本引數, 上面檢視到的 configure arguments:
編譯不安裝,以免覆蓋舊的檔案
make
備份cp /home/nginx/sbin/nginx /home/nginx/sbin/nginx1.10
.old
將新版本nginx-
1.12
.2/objs/nginx 複製到舊版本的sbin下
cp ./objs/nginx /home/nginx/sbin/nginx
檢視舊版本pid
cat /home/nginx/logs/nginx.pid
或者ps -ef
| grep nginx(這裡是603)
*** 60310
16:05
?00:00:00 nginx: master process ./nginx
nginx會將logs/nginx.pid檔案重新命名為nginx.pid.oldbin,然後用新的可執行檔案啟動乙個新的nginx主程序和對應的工作程序,並新建乙個新的nginx.pid儲存新的主程序號,這時,nginx的新的例項和舊的例項同時工作,共同處理請求連線.
kill -usr2
603給舊的主程序傳送winch訊號,kill -winch 舊的主程序號
舊的主程序號收到winch訊號後,將舊程序號管理的舊的工作程序優雅的關閉.
即一段時間後舊的工作程序全部關閉,只有新的工作程序在處理請求連線.
這時,依然可以恢復到舊的程序服務,因為舊的程序的監聽socket還未停止
kill -winch
603給舊的主程序傳送quit訊號,使其關閉
給舊的主程序傳送quit訊號後,舊的主程序退出,並移除logs/nginx.pid.oldbin檔案,nginx的公升級完成
kill -quit
603
#user nobody; 定義nginx執行的使用者和使用者組
worker_processes 8; 啟動的程序數
#以下引數指定了哪個cpu分配給哪個程序,一般來說不用特殊指定。
#如果一定要設的話,用0和1指定分配方式.
#這樣設就是給1-4個程序分配單獨的核來執行,出現第5個程序是就是隨機分配了。
#優化讓cpu處理更加均勻,更強
#worker_cpu_affinity 00000001 00000010 00000100 00001000
# 00010000 00100000 01000000 10000000
#乙個nginx程序開啟的最多檔案描述符數目
理論值應該是最多開啟檔案數(ulimit -n)與nginx程序數相除
但是nginx分配請求並不是那麼均勻,所以最好與ulimit -n的值保持一致
#vim /etc/security/limits.conf
# * soft nproc 65535
# * hard nproc 65535
# * soft nofile 65535
# * hard nofile 65535
#worker_rlimit_nofile 65535;
#定義全域性錯誤日誌定義型別,[debug|info|notice|warn|crit]
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#指定程序id儲存位置
#靜態檔案直接從目中讀取
#}}
部落格借鑑
nginx簡介及配置檔案詳解
以後慢慢寫
..
零開始學python 從零開始學Python
第1章 python入門 1 1 1 什麼是python 1 1 2 python語言有什麼特點 2 1 3 python可以幹什麼 4 練一練 5 第2章 準備開發環境 6 2 1 在windows上安裝python開發環境 6 2 2 選擇和安裝開發工具 11 練一練 17 第3章 基本概念 1...
從零開始學android
相對布局管理器指的是參考某一其他控制項進行擺放,可以通過控制,將元件擺放在乙個指定參考元件的上 下 左 右等位置,這些可以直接通過各個元件提供的屬性完成。下面介紹一下各個方法的基本使用 no.屬性名稱 對應的規則常量 描述1 android layout below relativelayout.b...
從零開始學 樹
在之前做二級的題的時候,偶爾會碰見二叉樹,很自然的就想起了樹,那麼什麼是樹呢?這裡說的可不是外面的參天大樹,而是有實際概念的樹,下面就來介紹一下樹。樹是由n n 0 個結點組成的有限集合。若n 0,稱為空樹 若n 0,則 1 有乙個特定的稱為根 root 的結點。它只有直接後繼,但沒有直接前驅 2 ...