作者回复: 是的,内核选项的范围是全局的,套接字接口里面设置的是单个
作者回复: 可以通过 /proc/net/sockstat、ss 这些工具来查看。图形界面也有很多,不过一般都是内置在监控系统里面,通过 Web 的方式来展示。比如 zabbix、Nagios等等
作者回复: 我们专栏有个微信群可以加入
作者回复: 系统会回收掉
作者回复: 可以去参考一下XDP的文档https://prototype-kernel.readthedocs.io/en/latest/networking/XDP/index.html
作者回复: 实际上没有通用的方法,uprobe应该是可以用的,不过使用起来还是比较麻烦的。推荐的做法是在应用内部提供metrics 接口,这个接口内部统计每个方法的调用情况。
作者回复: 不一定非要异步,但非阻塞、epoll 是比较通用的网络性能优化方法
作者回复: cat /proc/sys/net/ipv4/tcp_mem 查看配置
cat /proc/net/sockstat 查看当前tcp的统计
然后可以通过 sysctl -w net.ipv4.tcp_mem=新配置 来增大
作者回复: 请参考I/O模块排查IO问题
作者回复: 线程数还受限于CPU,不只是网络带宽
作者回复: 内核配置选项是全局的,对所有socket生效;系统调用针对的是单个socket,他们的总和受限于内核配置