成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > 如何測試Linux下tcp最大連接數(shù)限制詳解

如何測試Linux下tcp最大連接數(shù)限制詳解

熱門標(biāo)簽:廣東如何申請400電話 寧波400電話辦理對企業(yè)的意義 400電話申請要什么條件 北京人工外呼系統(tǒng)廠家 燃?xì)夤芫€地圖標(biāo)注顏色 哈爾濱400電話去哪辦理 話術(shù)外呼系統(tǒng) i智能電話機(jī)器人yeta 西柏坡地圖標(biāo)注

前言

關(guān)于TCP服務(wù)器最大并發(fā)連接數(shù)有一種誤解就是“因?yàn)槎丝谔柹舷逓?5535,所以TCP服務(wù)器理論上的可承載的最大并發(fā)連接數(shù)也是65535”。

先說結(jié)論:對于TCP服務(wù)端進(jìn)程來說,他可以同時(shí)連接的客戶端數(shù)量并不受限于可用端口號。并發(fā)連接數(shù)受限于linux可打開文件數(shù),這個(gè)數(shù)是可以配置的,可以非常大,所以實(shí)際上受限于系統(tǒng)性能。

現(xiàn)在做服務(wù)器開發(fā)不加上高并發(fā)根本沒臉出門,所以為了以后吹水被別人懟“天天提高并發(fā),你自己實(shí)現(xiàn)的最高并發(fā)是多少”的時(shí)候能義正言辭的懟回去,趁著元旦在家沒事決定自己寫個(gè)demo搞一搞。

這個(gè)測試主要是想搞明白Linux下哪些參數(shù)配置限制了連接數(shù)的最大值,上限是多少。

一、先說下demo的思路:

服務(wù)端用epoll實(shí)現(xiàn),就是簡簡單單的接收連接,然后客戶端用go的goroutine,每個(gè)goroutine就是簡單的建立連接,然后什么也不做。

上代碼:

server:

/*
 * g++ -o test_epoll ./test_epoll.c
 */
#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/epoll.h>
#include <netinet/in.h>
#include <arpa/inet.h>

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>

int SetReuseAddr(int fd)
{
 int optval = 1;
 socklen_t optlen = sizeof(optval);
 return setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, &optval, optlen);
}

int main()
{
 int fd = socket(AF_INET, SOCK_STREAM, 0);
 int iRet = SetReuseAddr(fd);
 if (iRet != 0)
 {
 printf("setsockopt for SO_REUSEADDR failed, error:%s\n", strerror(iRet));
 return iRet;
 }

 struct sockaddr_in addr;
 memset(&addr, 0, sizeof(addr));
 addr.sin_family = AF_INET;
 addr.sin_port = htons(8080);
 addr.sin_addr.s_addr = INADDR_ANY;
 if (bind(fd, (struct sockaddr*)&addr, sizeof(addr)) == -1)
 {
 printf("bind failed, error:%s\n", strerror(errno));
 return errno;
 }

 if (listen(fd, 5) == -1)
 {
 printf("listen failed, error:%s\n", strerror(errno));
 return errno;
 }
 printf("Listening on 8080...\n");

 int epfd = epoll_create(102400);
 struct epoll_event event;
 event.events = EPOLLIN;
 event.data.fd = fd;
 epoll_ctl(epfd, EPOLL_CTL_ADD, fd, &event);

 struct epoll_event revents[102400];
 int iOnline = 0;
 while (1)
 {
 int num = epoll_wait(epfd, revents, 102400, 60 * 1000);
 printf("epoll_wait return %d\n", num);
 if (num > 0)
 {
  for (int i = 0; i < num; i++)
  {
  if (revents[i].data.fd == fd)
  {
   int client;
   struct sockaddr_in cli_addr;
   socklen_t cli_addr_len = sizeof(cli_addr);
   client = accept(fd, (struct sockaddr*)&cli_addr, &cli_addr_len);
   if (client == -1)
   {
   printf("accept failed, error:%s\n", strerror(errno));
   if (errno == EMFILE)
   {
    printf("per-process limit reached\n");
    exit(errno);
   }
   if (errno == ENFILE)
   {
    printf("system-wide limit reached\n");
    exit(errno);
   }
   continue;
   }

   iOnline++;
   printf("Receive a new connection from %s:%d\n", inet_ntoa(cli_addr.sin_addr), cli_addr.sin_port);
   event.events = EPOLLIN;
   event.data.fd = client;
   epoll_ctl(epfd, EPOLL_CTL_ADD, fd, &event);
  }
  }
 }
 printf("Online number:%d\n", iOnline);
 }

 return 0;
}

client:

package main

import (
 "net"
 "fmt"
 "time"
 "strconv"
 "runtime"
)

func Connect(host string, port int) {
 _, err := net.Dial("tcp", host+":"+strconv.Itoa(port))
 if err != nil {
 fmt.Printf("Dial to %s:%d failed\n", host, port)
 return
 }

 for {
 time.Sleep(30 * 1000 * time.Millisecond)
 }
}

func main() {
 count := 0
 for {
 go Connect("192.168.63.128", 8080)
 count++;
 fmt.Printf("Gorutue num:%d\n", runtime.NumGoroutine())
 time.Sleep(100 * time.Millisecond)
 }
}

二、開始測試

第一次:

先說結(jié)果,連接數(shù)達(dá)到1031時(shí)accept失敗了,當(dāng)時(shí)還沒有對errno做判斷,所以只打印輸出了accept失敗。

然后首先想到的是ulimit -n的限制,查看了一下,默認(rèn)值1024,然后就是修改這個(gè)值,在/etc/security/limits.conf中添加一下內(nèi)容:

1 * soft nofile 102400
2 * hard nofile 102400

然后關(guān)閉當(dāng)前xshell連接,重新連接即生效,現(xiàn)在看ulimit -n就是102400了。

這兩行的意思就是將每個(gè)進(jìn)程能打開的文件描述符個(gè)數(shù)的soft、hard限制調(diào)整為102400,

注:ulimit -n 102400也可以生效,但是這個(gè)修改是臨時(shí)的。

然后進(jìn)行第二次測試。

第二次:

逗比了,其實(shí)連接數(shù)只有2000+,我之前還在奇怪為啥Windows的默認(rèn)連接數(shù)能有這么高呢,原來有些連接已經(jīng)斷了,但是因?yàn)槲覜]有做處理,所以以為還在呢,看來我得再安裝一個(gè)虛擬機(jī)了[二哈]

待繼續(xù)。。。

安裝虛擬機(jī)去,

時(shí)間:2017-12-31 00:09:00

虛擬機(jī)安裝好了,接著搞,

這次是真的超過10K了。

連接數(shù)還在增加,不知道能不能最終達(dá)到10萬呢,小小的期待ing

時(shí)間:2017-12-31 00:41:00,最終上限卡在28232,golang一直報(bào)dial失敗,由于忘了打印出具體錯(cuò)誤信息了,所以無從知道為什么dial失敗,所以只能再跑一次T_T

 時(shí)間:2017-12-31 01:01:00,添加打印dial失敗的錯(cuò)誤信息的,又跑了一遍,還是在28232時(shí)出現(xiàn)dial失敗,錯(cuò)誤信息:

golang的標(biāo)準(zhǔn)庫文檔中么有對錯(cuò)誤信息的解釋,從錯(cuò)誤信息來看,是分配地址失敗,于是想是不是端口地址范圍限制了。

查看了一下端口地址范圍,確認(rèn)就是這個(gè)限制,由于端口地址是16位,所以,就算把這個(gè)端口地址范圍修改為1024--65535,也最多能開啟64521個(gè)連接,而我現(xiàn)在只有一臺虛擬機(jī)作為客戶端,所以想要實(shí)現(xiàn)10萬連接是不可能了,但是通過這次測試,也讓我搞明白了,到底哪些參數(shù)會限制連接的上限,這就是我想要的。

最后,感謝Linux內(nèi)核團(tuán)隊(duì)的大神們推出了epoll這么牛逼的機(jī)制,才使得我們現(xiàn)在想實(shí)現(xiàn)高并發(fā)是如此的容易,希望自己有一天也能這么牛逼,哈哈。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

標(biāo)簽:阜陽 開封 珠海 巴中 襄陽 西藏 湘潭 張家口

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《如何測試Linux下tcp最大連接數(shù)限制詳解》,本文關(guān)鍵詞  如何,測試,Linux,下,tcp,最大,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《如何測試Linux下tcp最大連接數(shù)限制詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于如何測試Linux下tcp最大連接數(shù)限制詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    国产资源在线视频| 欧美日韩国产91| 在线观看完整版免费| 欧美丰满高潮xxxx喷水动漫| 欧美高清一级大片| 欧美日韩性生活| 香蕉久久精品日日躁夜夜躁| 992tv成人免费观看| 色视频在线观看在线播放| 国产亚洲情侣一区二区无| 免费成人在线看| 国产三级久久久| 亚洲欧洲日产国码无码久久99| 欧美在线中文| 亚洲精品美女久久7777777| 91丨九色丨黑人外教| 欧美视频一区在线| 国语精品免费视频| 黄色网址中文字幕| 午夜视频在线| 欧美一级裸体视频| 欧美性猛交xxxx| 一级黄色录像在线观看| 综合激情网...| 在线免费观看的av网站| 日本乱码一区二区三区不卡| 99热这里只有精品在线播放| 成人精品鲁一区一区二区| 黄频网站在线观看| 一区二区理论电影在线观看| 久久一夜天堂av一区二区三区| 麻豆最新免费在线视频| 精品日韩中文字幕| 亚洲av熟女国产一区二区性色| 精品亚洲自拍| 婷婷色综合网| 国产91免费在线观看| 精品国产乱码久久久久久免费| 少妇无套内谢久久久久| 日韩美女爱爱视频| 国产亚洲美女久久| 日韩av在线播放网址| 性感美女久久精品| 国产美女扒开尿口久久久| 亚洲福利一二三区| 无码精品人妻一区二区| 国产 日韩 欧美 成人| 香港经典三级在线| 在线看欧美日韩| 今天免费高清在线观看国语| 国产98在线|日韩| 日韩a一区二区| 日韩不卡一区二区| 免费视频一区| 国产成人午夜视频网址| 不卡的国产精品| 国产精品成人网| 91小视频xxxx网站在线| 超碰在线公开免费| 精品少妇一区二区三区免费观| 精品一区二区久久| 一区二区免费视频| 中文字幕视频在线| h狠狠躁死你h高h| 色婷婷综合久久久中文一区二区| 美女激情视频网站| 激情欧美一区二区| 超碰在线公开97| 欧美videos中文字幕| 尤物在线观看视频| 手机在线免费观看毛片| 亚洲a∨精品一区二区三区导航| 亚洲欧美国产一区二区三区| 欧美日韩国产精品激情在线播放| 欧美日韩18| 久久国产精品网| 亚洲国产成人精品一区二区三区| 欧美中文在线| 日韩av一级片| 国产sm调教视频| 九九热视频在线免费观看| 国产乱码精品一区二区三区精东| 国产精品成人av在线| 成人免费毛片东京热| 欧美美女一区二区| 自拍偷拍欧美专区| 欧美大片拔萝卜| 欧洲激情综合| 中文一区一区三区高中清不卡免费| 亚洲国产中文字幕久久网| 手机在线播放av| 亚洲1卡2卡3卡4卡乱码精品| 欧美a免费在线| a级片在线免费观看| а天堂中文在线官网| 国产精品久久影视| 激情视频免费| 欧美特黄aaaaaa| 激情五月婷婷综合网| 欧美福利电影网| 日本爱爱小视频| 狠狠色狠狠色综合人人| 国产精品青青草| 91麻豆视频在线观看| 手机成人av在线| 国产视频亚洲色图| 日韩欧美视频一区二区| 97色在线视频| 成人激情文学综合网| 国产精品都在这里| 在线看三级电影| 日韩成人在线网站| 另类美女黄大片| 97超碰在线免费观看| 91精品久久久久久久久久| 久久久精品国产**网站| 一区二区三区四区在线| 天堂成人娱乐在线视频免费播放网站| 亚洲娇小xxxx欧美娇小| a篇片在线观看网站| 91久久夜色精品国产按摩| 精品国产伦一区二区三区观看体验| 亚洲国产高清aⅴ视频| 欧美性猛交xxx乱大交3蜜桃| 亚洲一区二区三区观看| 一级片黄色录像| 亚洲一区二区久久久久久| 亚洲精品九九| japanesexxxxfree在线观看| 精品无码一区二区三区电影桃花| 残酷重口调教一区二区| 色开心亚洲综合| 成人福利影视| 妓院一钑片免看黄大片| 国产激情自拍| 波多野结衣视频网址| 国产www在线观看| 国产网红在线| 欧美日韩在线观看免费| 精品成人av一区二区三区| 国产精品久久久久久久久免费高清| 91精品啪在线观看国产手机| 亚洲精品一区二区三区四区高清| 国产精品久久久久久免费观看| 顶级嫩模精品视频在线看| 中文字幕久热精品在线视频| 亚洲经典中文字幕| 精品免费视频一区二区| 国产电影一区二区三区| 五月婷婷综合激情| 国产伦精品一区二区三区在线| 国产女优在线播放| 午夜啪啪小视频| 欧美午夜激情小视频| 羞羞答答一区二区| 久久高清一区| 国模一区二区三区私拍视频| 国产在线一二| 日韩不卡高清| wwwxx欧美| h视频在线观看网站| 国产又黄又爽视频| 污污的网站在线免费观看| 岛国精品在线播放| 一区二区三区欧洲区| 久久人人爽人人爽人人片亚洲| 人妻无码中文字幕| 精品久久久久香蕉网| 国产欧美精品在线播放| 最近免费中文字幕mv视频| 亚洲精品无码专区在线播放| 中文在线а√天堂| 337p日本欧洲亚洲大胆色噜噜| 国产精品久久不卡| 免费看污网站| 日韩在线观看视频一区| 久久久国产精品网站| **孕交吃奶水一级毛片| 精品亚洲a∨一区二区三区18| 中文字幕五月天| 400部精品国偷自产在线观看| 久久69精品久久久久久久电影好| 午夜久久久影院| 91在线你懂得| 精国产品一区二区三区a片| 久久久久久久美女| 国产精品黄色网| 一区二区精品在线观看| 成人国产激情在线| 免费在线观看精品| 久久艳片www.17c.com| 精品一区二区三区在线| 97福利一区二区| 五月天激情图片| 欧美一区二区三区四区在线| 日韩电影网1区2区| 欧美第一黄网| 亚洲欧洲激情在线| 精品亚洲一区二区三区在线播放| 五月天婷婷在线播放| 欧美日韩亚洲精品内裤| 筱崎爱全乳无删减在线观看| 国产乱人伦真实精品视频| 久久综合九色综合88i| 韩国v欧美v日本v亚洲| 欧美久久久久久久久中文字幕| www.久久国产| 日韩精品一级毛片在线播放| 亚洲国产精品大全| 九九九久久久精品| 欧美日韩伊人| а√天堂在线官网| 亚洲精品国产精品乱码在线观看| 久久99国产精品久久99果冻传媒| 国产成人无码一区二区三区在线| 四虎国产精品永久免费观看视频| 欧美亚洲色综久久精品国产| 国产一区二区三区四区| 色琪琪丁香婷婷综合久久| 日本一级淫片演员| 日韩精品久久久久久久软件91| 国产精品最新乱视频二区| 国产7777777| 欧美在线视频二区| 麻豆国产尤物av尤物在线观看| 成人综合婷婷国产精品久久| 久久国产亚洲精品无码| 成人国产免费视频| 国产日韩在线免费观看| 久久久综合久久久| 国产经典一区| 国产精品福利片| 欧美激情第10页| 熟妇高潮一区二区| 超碰在线人人爱| 在线欧美成人| 精品国自产在线观看| 日日噜噜噜噜人人爽亚洲精品| ga∨成人网| 精品国产一二三区| 国产成人av电影| 又黄又湿又爽又免费又色| 欧美18一12sex性处hd| 久久在线电影| 精品国产亚洲一区二区三区| 色综合免费视频| 日韩精品亚洲精品| 亚洲日本中文字幕区| 亚洲一区免费在线| 99理论电影网| 欧美 日韩 亚洲 一区| 国产亚洲欧美一区二区三区| 久久久久久国产精品免费免费| 国产精品美女久久久免费| 国产精品久久久久久久久妇女| 97视频久久久| 日日摸日日碰夜夜爽无码| 欧美成人精品三级网站| 日韩欧美高清在线播放| 国产手机视频在线观看| 日韩欧美手机在线| 日韩你懂的在线播放| 久久精品午夜一区二区福利| 成人亚洲精品| 亚洲永久免费精品| 国产精品视频h| 亚洲免费观看高清完整版在线观| 黑人巨大精品欧美黑白配亚洲| eeuss影院www在线观看免费| 欧美黑人巨大xxxxx| 久久99久久99精品| 四虎成人精品在永久在线观看| 国产一级黄色大片| 中国女人内谢69xxxx视频| 99精品视频99| 黑森林国产精品av| 成年人黄色在线观看| 久久精品一区二区三区不卡牛牛| 一区二区三区精品牛牛| 青春草在线视频免费观看| 成人精品久久一区二区三区| 久久精品夜夜夜夜夜久久| 极品尤物一区二区| 成人免费看片网址| 欧美日韩在线播放一区| 在线免费看视频| 高潮无码精品色欲av午夜福利| 青青草国产免费一区二区下载| 丰满放荡岳乱妇91ww| 香蕉视频国产在线观看| 国产美女精品视频免费播放软件| 大地资源网3页在线观看| 四虎成人精品永久免费av九九| 丝袜足控免费网站xx网站| 亚洲啊v在线免费视频| 国产成人在线免费视频| 午夜影院一区| 欧美猛男性生活免费| 日韩一区二区电影在线| 日韩精品免费在线视频观看| 亚洲一区999| 日韩美女免费观看| 国产精选久久| 能免费看av的网站| 少妇aaaaa| 亚洲精品成人三区| 9999精品| 嫩草伊人久久精品少妇av杨幂| 欧美一级日本a级v片| 中文字幕一区视频| 国产成人三级在线播放| 蜜桃视频第一区免费观看| 欧美在线播放一区| 亚洲欧美日韩视频二区| 国产一区二区三区视频在线播放| 欧美亚洲成人精品| 高清电影在线观看免费| 日韩精品成人免费观看视频| 美女喷白浆视频| 国产高潮在线观看| 无码人妻少妇色欲av一区二区| 国产欧美日韩一区二区三区| 亚洲插插视频| 欧美高清视频在线高清观看mv色露露十八| 国产精品久久久久9999爆乳| 国产suv精品一区二区| 国产一区二区三区四区老人| 色中色综合网|