測試機器為阿里雲伺服器1核1g記憶體,swap分割槽2g,停用除ssh外的所有服務,僅保留nginx,優化思路主要包括兩個層面:sysctl系統設定+nginx引數設定。
sysctl系統設定:
ulimit -n 20480 ## 開啟檔案數量
echo 10000 > /proc/sys/net/core/somaxconn ## tcp最大連線數
tcp連線立即**、回用
echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle
echo 0 > /proc/sys/net/ipv4/tcp_syncookies ## 遮蔽tcp非同步
sysctl -p ## 設定生效
nginx引數設定:
重啟nginx
systemctl restart nginx
nginx 高併發配置 1萬併發
系統層優化 系統 socket 層優化 echo 65535 proc sys net core somaxconn 准許最大鏈結數 echo 1 proc sys net ipv4 tcp tw recycle 快速 鏈結 echo 1 proc sys net ipv4 tcp tw reuse...
高併發配置
其實,對於 nginx tomcat 等這種 web 伺服器,都提供了 backlog 引數設定入口,當然它們都會有預設值,通常這個預設值都不會太大 包括核心預設的半連線佇列和全連線佇列長度 如果應用併發訪問非常高,只增大應用層 backlog 是沒有意義的,因為可能核心引數關於連線佇列設定的都很小...
nginx高併發配置
nginx配置及說明 worker processes 8 nginx 程序數,建議按照cpu 數目來指定,一般為它的倍數。worker cpu affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000...