您好,欢迎访问沃航(武汉)科技有限公司官方网站
如何查看linux的socket可支持的最大缓冲区(buffer)大小
2020-05-06 02:51:42

由于小沃经常开发一些高并发的程序,经常使用到非阻塞IO以及epoll等特性。而在非阻塞IO编程中,socket的缓冲区大小是提高性能的一个重要指标。

这个参数可以通过setsockopt来修改,但是修改总有个上线,如果知道了这个上线,我们就可以合理用户层的接收缓冲区大小了。

下面小沃就来告诉大家如何查看这个缓冲区大小的最大可设置值:

读缓冲

cat /proc/sys/net/core/rmem_max

写缓冲

cat /proc/sys/net/core/wmem_max

但是注意,这个值并不是最大值,这个值只有最大值的1/2。

当我们通过setsockopt设置的参数大于上面的值时,实际就会变为这个值的两倍。

比如通过上面的命令得到的值为212992,那么通过程序设置的值大于212992,实际就会变为2*212992=425984?


文章作者:沃航科技

联系我们
地址:
武汉市洪山区蓝晶国际7栋903
QQ:
932773931
电话:
027-59761089-806
手机:
13397158231
邮箱:
jevian_ma@worldflying.cn
×
物联网组态平台
试用账号:123456
试用密码:123456
如需测试更多功能或者有疑问可发送邮件至:jevian_ma@worldflying.cn
×
积木编程平台
试用方式:试用手机号码注册即可使用
如需测试更多功能或者有疑问可发送邮件至:jevian_ma@worldflying.cn