nginx配置詳解之events模組

2021-09-29 03:27:34 字數 1952 閱讀 4610

events模組中包含nginx中所有處理連線的設定.

常用配置項如下

events{

accept_mutex on; #設定網路連線序列化,防止驚群現象發生,預設為on

multi_accept on; #設定乙個程序是否同時接受多個網路連線,預設為off

#use epoll; #事件驅動模型,select|poll|kqueue|epoll|resig|/dev/poll|eventport

worker_connections 2000; #最大連線數,預設為512

client_header_buffer_size 4k;

open_file_cache max=2000 inactive=60s;

open_file_cache_valid 60s;

open_file_cache_min_uses 1;

下面為詳細說明

#使用epoll的i/o 模型(值得注意的是如果你不知道nginx該使用哪種輪詢方法的話,它會選擇乙個最適合你作業系統的)

補充說明:

與apache相類,nginx針對不同的作業系統,有不同的事件模型

a)標準事件模型

select、poll屬於標準事件模型,如果當前系統不存在更有效的方法,nginx會選擇select或poll

b)高效事件模型

kqueue:使用於freebsd 4.1+, openbsd 2.9+, netbsd 2.0 和 macos x.使用雙處理器的macos x系統使用kqueue可能會造成核心崩潰。

epoll:使用於linux核心2.6版本及以後的系統。

/dev/poll:使用於solaris 7 11/99+, hp/ux 11.22+ (eventport), irix 6.5.15+ 和 tru64 unix 5.1a+。

eventport:使用於solaris 10. 為了防止出現核心崩潰的問題, 有必要安裝安全補丁

檢視linux版本號可以使用 cat /proc/version命令

cat /proc/version

輸出如下

linux version 2.6.32-504.23.4.el6.x86_64 ([email protected]

(gcc version 4.4.7 20120313 (red hat 4.4.7-11) (gcc) ) 

#1 smp tue jun 9 20:57:37 utc 2015

#工作程序的最大連線數量 理論上每台nginx伺服器的最大連線數為worker_processes*worker_connections worker_processes為我們再main中開啟的程序數

客戶端請求頭部的緩衝區大小,這個可以根據你的系統分頁大小來設定,一般乙個請求頭的大小不會超過1k,不過由於一般系統分頁都要大於1k,所以這裡設定為系統分頁大小。檢視系統分頁可以使用 getconf pagesize命令

getconf pagesize

輸入如下:

[***x nginx]# getconf pagesize

4096

為開啟檔案指定快取,預設是沒有啟用的,max指定快取最大數量,建議和開啟檔案數一致,inactive是指經過多長時間檔案沒被請求後刪除快取 開啟檔案最大數量為我們再main配置的worker_rlimit_nofile引數

這個是指多長時間檢查一次快取的有效資訊。如果有乙個檔案在inactive時間內一次沒被使用,它將被移除

open_file_cache指令中的inactive引數時間內檔案的最少使用次數,如果超過這個數字,檔案描述符一直是在快取中開啟的,如果有乙個檔案在inactive時間內一次沒被使用,它將被移除

nginx配置詳解之http模組

http模組控制著nginx http處理的所有核心特性 以下為常用配置 注 keepalive timeout open file cache也可以配置在http模組 與配置在event模組相同 詳見 log format日誌配置 負載均衡 反向 等配置此處省略介紹 我將在介紹相應的模組時詳細介紹...

Nginx配置詳解

nginx的主要配置檔案是nginx.conf,位於安裝目錄下的nginx conf資料夾裡,主要的配置引數如下 定義nginx執行的使用者和使用者組 user nobody nobody nginx程序數,建議設定為等於cpu總核心數。worker processes 8 全域性錯誤日誌定義型別,...

nginx配置詳解

定義nginx執行的使用者和使用者組 user www www nginx程序數,建議設定為等於cpu總核心數。worker processes 8 全域性錯誤日誌定義型別,debug info notice warn error crit error log var log nginx error...