linux下單程序可建立的最大連線數

2021-06-02 00:29:08 字數 1608 閱讀 8258

檢視各類資源限制:

ulimit -a

linux 連線數的限制: socket連線數和乙個程序能開啟的最大檔案描述符數相等

修改linux socket最大連線數有兩種方法:

1、使用命令:ulimit -n ***   

把允許最大開啟的描述符修改為***,只對當前終端開啟的應用程式有效。    

2、修改/etc/security/limits.conf

在該檔案中新增以下兩行:

*      soft    nofile     5000

*      hard    nofile     20000



解釋:

@users

表示該配置對users組內所有使用者均有效

soft     表示軟連線數

hard     表示硬連線數

nofile    開啟檔案的最大數目

(對於需要做許多套接字連線並使它們處於開啟狀態的應用程式而言,最好通過使用 ulimit –n,或者通過設定nofile 引數,為使用者把檔案描述符的數量設定得比預設值高一些。)

附錄:ulimit命令

設定限制     可以把命令加到profile檔案裡,也可以在/etc/security/limits.conf檔案中定義限制。

命令引數

-a      顯示所有限制

-c      core檔案大小的上限

-d      程序資料段大小的上限

-f      shell所能建立的檔案大小的上限

-m     駐留記憶體大小的上限

-s      堆疊大小的上限

-t      每秒可占用的cpu時間上限

-p     管道大小

-n     開啟檔案數的上限

-u     程序數的上限

-v     虛擬記憶體的上限

limits.conf 檔案

實際是 linux pam(插入式認證模組,pluggable authentication modules)中 pam_limits.so 的配置檔案,而且只針對於單個會話。

limits.conf的格式如下:

username|@groupname type resource limit

username|@groupname:設定需要被限制的使用者名稱,組名前面加@和使用者名稱區別。也可以用萬用字元*來做所有使用者的限制。

type:有 soft,hard 和 -,soft 指的是當前系統生效的設定值。hard 表明系統中所能設定的最大值。soft 的限制不能比hard 限制高。用 - 就表明同時設定了 soft 和 hard 的值。

resource:

core - 限制核心檔案的大小

date - 最大資料大小

fsize - 最大檔案大小

memlock - 最大鎖定記憶體位址空間

nofile - 開啟檔案的最大數目

rss - 最大持久設定大小

stack - 最大棧大小

cpu - 以分鐘為單位的最多 cpu 時間

noproc - 程序的最大數目

as - 位址空間限制

maxlogins - 此使用者允許登入的最大數目

Linux程序 程序的建立

今天學習了linux的程序建立的基本原理,是基於0.11版本核心的。下面對其作一下簡單的總結。一 linux程序在記憶體中的相關資源 很容易理解,linux程序的建立過程就是記憶體中程序相關資源產生的過程,那麼linux程序在記憶體中有哪些相關資源呢?1 task陣列中的一項 乙個指標指向程序的ta...

Linux 程序建立

華清遠見嵌入式學院 上海分中心講師。在 linux 核心內,程序是由相當大的乙個稱為 task struct 的結構表示的。此結構包含所有表示此程序所必需的資料,此外,還包含了大量的其他資料用來統計 accounting 和維護與其他程序的關係 父和子 下面給出了 task struct 的一小部分...

Linux 程序建立

1 linux建立程序的方式是先通過呼叫fork建立乙個和呼叫程序基本一樣的子程序,二者之間的區別在於pid和ppid不同。然後子程序呼叫exec函式裝載乙個新的程序到位址空間執行。其他的作業系統產生子程序的方式是spawn 在新的位址空間中建立程序,然後載入可執行檔案執行。2 傳統的fork是將所...