go高性能tcp服务器,GO 记一次TcpServer性能优化

库存文章发布

写了一个TcpServer,主要功能是做终端的保活信息,保活信息中包含一些额外数据。并转发来自后端的命令至终端。

历经数日,各项基础功能完备,准备做一些压力测试。

服务器配置:

cpu family : 6

model : 63

model name : Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40GHz

stepping : 2

microcode : 0x38

cpu MHz : 1523.625

cache size : 15360 KB

内存:16G

当然,了为压力测试,独立写了客户端测试程序,客户端也简单,实现连接和心跳(10秒一次)。

第一次测试,客户端数据过千就出错了,很明显,limit需要配置一下喽。 limit这个配置,说难不难,但每次记不住。

第二次测试,客户端20k,貌似没问题,只是CPU使用率达到200%多,领导不同意,性能堪忧,并对go产生质疑,如此性能,怎么称霸宇宙!! 改去吧。

开始一次性能优化之旅:

1,首先,我们看到了性能问题,但我们不知道哪里有问题。于是需要工具帮我们调查,哪里慢了。这里pprof 工具出场性能试工具

虽然我的程序并不提供http服务,但我依然选择了http的方式,输出debug,因为我觉得这样方便

main.go

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值