记一次修改内核tcp配置参数提升网络传输速度

通过修改Linux内核参数net.ipv4.tcp_slow_start_after_idle为0,避免TCP连接在低QPS时每次请求都进行慢启动,显著降低了服务整体耗时约20ms,提高了网络传输速率。建议在内网服务中应用此优化,尤其适用于TCP长连接场景,如RPC、HTTP、Redis和MQ等。
摘要由CSDN通过智能技术生成

一段话总结全文

通过修改内核参数net.ipv4.tcp_slow_start_after_idle为0,可以避免tcp连接qps不高的情况下,每一个请求都经历慢启动过程,从而提高网络传输速度。

服务整体耗时降低了约20ms

建议修改该参数,充分发挥 TCP 长连接的优势,提高网络传输速率

下面详细介绍一下问题发现的过程和原因

遇到的问题

长期以来有个问题,A、B两个服务,AB的上游,从监控上看我们发现一个现象:站在A的角度上看请求B的平均耗时比站在B的角度上看B自身的平均耗时高出20ms左右,

例如下图,B自身业务平均耗时30ms,但是A请求B并收到返回结果的平均耗时却是50ms,那么中间相差的20ms哪去了呢?

image.png

A角度上看,比B角度上看多统计了这几个耗时:

  • IO线程与逻辑线程之间的排队时间
  • 协议的序列化与反序列化
  • 网络传输的时间

多出来的时间在哪呢?cpu利用率并不高,基本排除排队时间影响,序列化和反序列化的耗时可以通过在代码中打点计算,也不高,那么嫌疑最大的就是网络传输时间

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值