單機最大程序數,執行緒數和Socket連線數

2021-06-18 16:05:02 字數 1966 閱讀 8312

前言:參加unix/linux相關高階研發職位時,是否經常會被文件,單機允許最大程序數、執行緒數和socket連線數,而你卻感到束手無措呢?本文給你乙個最為詳細的答案。

一、最大程序數

執行linux ulimit -a指令,我們可以看到:max user processes=1024 執行結構如下圖所示:

[root@localhost ~]# ulimit

unlimited

[root@localhost ~]# ulimit -a

core file size          (blocks, -c) 0

data seg size           (kbytes, -d) unlimited

scheduling priority             (-e) 0

file size               (blocks, -f) unlimited

pending signals                 (-i) 1830

max locked memory       (kbytes, -l) 64

max memory size         (kbytes, -m) unlimited

open files                      (-n) 1024

pipe size            (512 bytes, -p) 8

posix message queues     (bytes, -q) 819200

real-timepriority              (-r) 0

stack size              (kbytes, -s) 10240

cputime(seconds, -t) unlimited

max user processes              (-u) 1024

virtualmemory          (kbytes, -v) unlimited

file locks                      (-x) unlimited

二、最大執行緒數

[zhangzl@localhost ~]$ cat /proc/sys/kernel/threads-max

3660

看到最大執行緒數的限制了嗎?3660

三、最大socket連線數

關於最大socket連線數,因為乙個socket連線需要占用乙個檔案控制代碼,所以支援開啟的連線數就是檔案數控制代碼數:open files (-n) 1024

四、乙個程序允許啟動的最大執行緒數

linux環境,乙個程序分配的虛擬記憶體空間是4g,可用2g,每個執行緒stack空間為10m,2048/10  = 200,所以一般的單程序能開通的執行緒數也就可以確定了。約為200個。

五、ulimit命令詳解

參  數:

-a  顯示目前資源限制的設定。

-c 

檢視執行緒數和控制代碼和程序最大檔案連線數

一 查執行緒數 方式一 cat proc pid status 展示結果中,threads後邊對應的數字就是程序擁有的執行緒數量。cd proc pid 檢視此目錄,可看到ssh對應執行緒目錄task和檔案控制代碼數目錄fd 方式二 ps hh p 3805 wc l 二 檢視執行緒佔控制代碼數 u...

tomcat最大執行緒數 最大等待數和最大連線數

tomcat是目前較為常用的web容器,那麼怎麼配置tomcat才能使得自己的服務效率更高,今天我主要解釋一下tomcat的最大執行緒數 maxthreads 最大等待數 acceptcount 和最大連線數 maxconnections maxthreads 最大執行緒數 每一次http請求到達w...

tomcat最大執行緒數 最大等待數和最大連線數

tomcat是目前較為常用的web容器,那麼怎麼配置tomcat才能使得自己的服務效率更高,今天我主要解釋一下tomcat的最大執行緒數 maxthreads 最大等待數 acceptcount 和最大連線數 maxconnections maxthreads 最大執行緒數 每一次http請求到達w...