xtaci / smux

A Stream Multiplexing Library for golang with least memory usage(TDMA)
MIT License
1.27k stars 189 forks source link

当并发newStream 较高时,recvLoop存在内存泄露 #98

Closed gjmzj closed 1 month ago

gjmzj commented 2 months ago

本地测试服务端 http://127.0.0.1:18080/ 是经过smux 多路复用的;

用这个压测参数时 ab -n 500 -c 5 http://127.0.0.1:18080/,没发生内存泄露

用 ab -n 5000 -c 50 http://127.0.0.1:18080/时有内存泄露,使用go tool pprof http://localhost:6060/debug/pprof/heap\?gc\=1

image

gjmzj commented 1 month ago

可能是自己代码问题,还在排查中,有进展再来同步

gjmzj commented 1 month ago

找到问题了,是我自己代码问题,sorry