日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

增大Linux的socket最大连接数(针对select,要编译内核)

發布時間:2025/3/21 linux 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 增大Linux的socket最大连接数(针对select,要编译内核) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近接的項目是模擬多個socket 客戶端與服務器進行通信。由于Linux 系統的限制,在linux/include/linux/posix_types.h文件中有如下的宏定義:

#undef __FD_SETSIZE

#define __FD_SETSIZE 1024

這個宏是對最大文件描述符的定義為1024。當需要1024個以上的fd時,例如select()函數就會偵聽出錯。因此需要將1024改成需要的數目,但最多不能超過65535。但僅僅修改這個是不夠的。

第二步就需要修改一個進程最大打開的文件數。其具體步驟是:

1、cd /usr/src/linux-2.4/include/linux

2、vi limits.h 編輯文件:

#define NR_OPEN 90240 原值為1024

#define OPEN_MAX 10240 原值為1024

3、vi fs.h

#define INR_OPEN 10240 原值為1024

#define NR_FILE 65536 原值為8192,這個值為內存64/1M的比率計算,1G內存計算為:64*1024

#define NR_RESERVED_FILES 128 原值為10.

4、cd /usr/src/linux-2.4/include/net

5、vi tcp.h

#define TCP_LHTABLE_SIZE 128 原值為32.便于listen偵聽隊列,設大。

設置最大打開文件數與內存相關,太大系統會變慢。

第三步就是編譯內核,其具體步驟是:

1. make clean

2. make

3. make dep

4. make bzImage

將bzImage 導入/boot 重啟系統即可!

用 1024個以上客戶端與服務器進行連接,在服務器的終端用netstat |wc 命令可以統計出當前建立的socket的連接數。

總結

以上是生活随笔為你收集整理的增大Linux的socket最大连接数(针对select,要编译内核)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。