前沿拓展:
kb4020102
1、Windows10創(chuàng)意者版積累性更新15063.332(KB4020102)已經(jīng)于5月26日向創(chuàng)意者正式版用戶推送,該補(bǔ)丁包含了很多問(wèn)題修復(fù)和性能提升。
以下為更新內(nèi)容:
解決了當(dāng)CreG席快趙角條點(diǎn)飯項(xiàng)討置uard開(kāi)啟,NTLMv正在使用并且沒(méi)有服務(wù)器
我們只需要對(duì)net.ipv4.tcp_mem,net.ipv4.tcp_wmem,net.ipv4.tcp_rmem進(jìn)行適合的修改即可
# 編輯內(nèi)核參數(shù)配置文件
vim /etc/sysctl.conf
# 添加以下內(nèi)容
# 最小值 默認(rèn)值 最大值
net.ipv4.tcp_mem = 252144 524288 786432 # tcp協(xié)議棧的大小,單位為內(nèi)存頁(yè)(4K),分別是 1G 2G 3G,如果大于2G,tcp協(xié)議棧會(huì)進(jìn)行一定的優(yōu)化
net.ipv4.tcp_wmem = 1024 1024 2048 # tcp接收緩存區(qū)(用于tcp接受滑動(dòng)窗口)的最小值,默認(rèn)值和最大值(單位byte)1k 1k 2k,每一個(gè)連接fd都有一個(gè)接收緩存區(qū)
net.ipv4.tcp_rmem = 1024 1024 2048 # tcp發(fā)送緩存區(qū)(用于tcp發(fā)送滑動(dòng)窗口)的最小值,默認(rèn)值和最大值(單位byte)1k 1k 2k,每一個(gè)連接fd都有一個(gè)發(fā)送緩存區(qū)
# 總緩存 = (每個(gè)fd發(fā)送緩存區(qū) + 每個(gè)fd接收緩存區(qū)) * fd數(shù)量
# (1024byte + 1024byte ) * 100w 約等于 2G
如果服務(wù)器是用來(lái)接收大文件,傳輸量很大的時(shí)候,就要把send buffer和read buffer調(diào)大。
如果服務(wù)器只是接收小數(shù)據(jù)字符的時(shí)候。把buffer調(diào)小是為了把fd的數(shù)量做到更多,并發(fā)數(shù)量能做到更大。如果buffer調(diào)大的話,內(nèi)存會(huì)不夠。
百萬(wàn)并發(fā)測(cè)試結(jié)果
出現(xiàn)的問(wèn)題小編綜合來(lái)說(shuō)
想要實(shí)現(xiàn)服務(wù)器百萬(wàn)并發(fā):
一個(gè)進(jìn)程能夠打開(kāi)文件描述符的數(shù)量open files 和 file-max 改成100w以上在不同的環(huán)境下要看開(kāi)放的端口夠不夠socket fd — < 源IP地址 , 源端口 , 目的IP地址 , 目的端口 , 協(xié)議 >設(shè)置netfilter允許對(duì)外最大連接數(shù)量100w以上根據(jù)內(nèi)存和場(chǎng)景,適當(dāng)調(diào)整net.ipv4.tcp_mem,net.ipv4.tcp_wmem,net.ipv4.tcp_rmem
原文地址:Linux服務(wù)器百萬(wàn)并發(fā)實(shí)現(xiàn)與問(wèn)題排查
拓展知識(shí):
原創(chuàng)文章,作者:九賢生活小編,如若轉(zhuǎn)載,請(qǐng)注明出處:http://xiesong.cn/20004.html