欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

目錄

nginx最大并發(fā)連接數(shù)的思考:worker_processes、worker_connections、worker_rlimit_nofile三個關(guān)鍵配置項

參考nginx官網(wǎng):http://nginx.org/en/docs/ngx_core_module.html#worker_connections

   從用戶的角度,http 1.1協(xié)議下,由于瀏覽器默認(rèn)使用兩個并發(fā)連接,因此計算方法:

   nginx作為http服務(wù)器的時候:

    max_clients = worker_processes * worker_connections/2

   nginx作為反向代理服務(wù)器的時候:

    max_clients = worker_processes * worker_connections/4  (

官方wiki(頁面標(biāo)記已經(jīng)過時,但是網(wǎng)上很多文章都在引用)看到一個關(guān)于為什么除以4的解釋:

 

 wKiom1OJ8DSAgxkKAACuEkIa_ng216.jpg

   

 如果作為反向代理,因為瀏覽器默認(rèn)會開啟2個連接到server,而且Nginx還會使用fds(file descriptor)從同一個連接池建立連接到upstream后端。則最大連接數(shù)的計算公式如下:

或者從一般建立連接的角度:客戶并發(fā)連接為1.

   nginx作為http服務(wù)器的時候:

    max_clients = worker_processes * worker_connections

   nginx作為反向代理服務(wù)器的時候:

    max_clients = worker_processes * worker_connections/2

nginx做反向代理時,和客戶端之間保持一個連接,和后端服務(wù)器保持一個連接。

但是怎樣合理的設(shè)置worker_processes與worker_connections這兩個參數(shù)?

worker_processes :

  worker角色的進(jìn)程個數(shù)(nginx啟動后有多少個worker處理http請求。master不處理請求,而是根據(jù)相應(yīng)配置文件信息管理worker進(jìn)程.   master進(jìn)程主要負(fù)責(zé)對外攬活(即接收客戶端的請求),并將活兒合理的分配給多個worker,每個worker進(jìn)程主要負(fù)責(zé)干活(處理請求))。

最理想的worker_processes值取決于很多因素,包含但不限于CPU的核數(shù),存儲數(shù)據(jù)的硬盤驅(qū)動器個數(shù)(跟這個有什么關(guān)系?難道和cpu一樣,存在跨區(qū)域讀取數(shù)據(jù)問題),以及負(fù)載模式(?這個是什么?)當(dāng)其中任何一個因素不確定的時候,將其設(shè)置為cpu核數(shù)或許是一個比較好的初始值,“自動”也基本是如此確認(rèn)一個參數(shù)值的。

 “自動”這個參數(shù)值是從nginx 1.3.8和nginx 1.2.5 開始進(jìn)行支持的,自動參數(shù)可以自動檢測 cpu cores 并設(shè)置 worker_processes 參數(shù) 。

 在網(wǎng)上也看到以下建議:

       nginx doesn't benefit from more than one worker per CPU.

       一個cpu配置多于一個worker數(shù),對nginx而言沒有任何益處。

 If Nginx is doing CPU-intensive work such as SSL or gzipping and you have 2 or more CPUs/cores, then you may set worker_processes to be equal to the number of CPUs or cores.

    如果nginx處理的是cpu密集型(比較耗費(fèi)cpu的)的操作,建議將此值設(shè)置為cpu個數(shù)或cpu的核數(shù)。

    cpu相關(guān)信息查看:

    邏輯CPU個數(shù):

          # cat /proc/cpuinfo | grep "processor" | wc -l

     物理CPU個數(shù):

           # cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l

     每個物理CPU中Core的個數(shù):

         # cat /proc/cpuinfo | grep "cpu cores" | wc -l

worker_connections:

官方解釋如下,個人認(rèn)為是每一個worker進(jìn)程能并發(fā)處理(發(fā)起)的最大連接數(shù)(包含所有連接數(shù))。

不能超過最大文件打開數(shù):在linux終端中輸入ulimit -a進(jìn)行查看

worker_rlimit_nofile

英文原文:

Syntax: worker_rlimit_nofile number;

Default:    —

Context:    main

Changes the limit on the maximum number of open files (RLIMIT_NOFILE) for worker processes. Used to increase the limit without restarting the main process.

中文翻譯:

為nginx工作進(jìn)程改變打開最多文件描述符數(shù)目的限制。用來在不重啟主進(jìn)程的情況下增加限制。

例如:

worker_rlimit_nofile 204800;

理論上這個值是最多打開文件數(shù)(ulimit -n)與nginx工作進(jìn)程相關(guān)

參考:

評論可見,查看隱藏內(nèi)容


本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。

轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/18580227.html

發(fā)布評論

您暫未設(shè)置收款碼

請在主題配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問

文章目錄