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