-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
好像有内存泄漏 #415
Comments
哦? 确实有内存使用方面的调整,检查一下。 |
这个版本改动比较大,可能会有些问题。 |
嗯,我试试,不过我的服务器好几个人再用,估计得一两天才能大致看出是否改善 |
@xtaci 经过两个小时左右的连续播放测试,使用版本 |
确实很奇怪,我的vultr平时也就最多70MB |
@everfly 用我最新的release测试吧,设计上确实会多用内存,但不至于会这么夸张。 另外 尝试 GOGC=20 |
好的,我用最新版本试试看 |
我也观察到这个现象了,只有一个人在用。 麻烦 @xtaci 大神看看吧,谢谢! |
@bettermanbao 客户端还是服务器 |
服务器 @xtaci |
刚换了0308版,等我看看是否改善。 |
kcptun-linux-386-20170308.tar.gz 这个是之前的内存控制/发送队列方式。 |
@xtaci client和server 不需要版本一致吧 |
不需要一致,但最好一致 |
3月的版本结构上优化比较大,肯定会有不少问题,感谢各位的测试。 |
负优化吗?哈哈哈哈哈。。。。 |
主要是针对服务器的优化,大量连接 > 5K 的优化措施,针对游戏的。 |
你还把kcptun用在生产环境啊??? |
@bettermanbao 好多把kcp-go用于生产环境的啊, 生产环境远没有kcptun的用法那么高要求。游戏的话甚至不需要FEC,窗口32就足够了。但是连接数非常高。kcptun的另一个目的是把kcp-go推到极致。 |
|
是问题解决了? |
额,没有吧,内存还是缓慢的增长,你看看趋势,从昨天17:00 到今天5:00 ,从今天5:00重启之后还在增长 |
我的可能是有好几个人在使用的缘故,内存上升的比较快,并且我在服务端运行了3个server程序,不过一个空跑,一个几乎不用,这两个没什么变化,一个正常使用,可以不怎么使用的一个5M内存,一个11M左右,正常使用的增长快 [root@localhost ~]#
[root@localhost ~]# ps aux|grep server_
root 131 0.4 23.1 190644 121584 ? Sl 16:00 1:42 ./server_linux_amd64 -c /opt/kcptun/server-config.json
root 132 0.0 0.2 5428 1192 ? Sl 16:00 0:00 ./server_linux_amd64 -c /opt/kcptun/server-config29905.json
root 133 0.0 0.8 11192 4688 ? Sl 16:00 0:13 ./server_linux_amd64 -c /opt/kcptun/server-config29910.json
root 600 0.0 0.1 112600 1032 pts/0 S+ 21:51 0:00 grep --color=auto server_
[root@localhost ~]#
[root@localhost ~]# |
kcptun-linux-386-20170309.tar.gz 试下这个吧,有个地方确实可能会延迟回收,但不清楚是不是这个原因。 |
kcptun-linux-386-20170312.tar.gz (fix json config 21:12) @huawuxin 对,默认aes-256 @everfly 那就只能出杀手锏了, 这个增加了一个选项 -pprof 开启后,会监听 :6060端口,通过 启动后,会提示 2017/03/12 12:58:59 pprof: true |
我这里也无法重现,观察了三天,连续剧十集1080连续看,vultr $2.5顶多16%内存占用,树莓派客户端就更少了,始终2%左右。 会不会系统也有关系,我的所有都是debian. |
@baggiogogo 我这边Linode, Bandwagon系统都是ubuntu 16.04LTS,然后两边内存占用都很高,不清楚是不是和系统有关系。。 |
@everfly 更新下,json配置刚才没有启用。 http://IP:6060/debug/pprof/heap?debug=1 heap的信息,所有内存分配状况:
|
@everfly 重新下载一下#415 (comment) |
@xtaci 内容太多,debug info,你直接访问查看吧,不过这会儿才重开的kcptun,内存占用还很少。 |
目前看上去很正常,12M |
内存是缓慢上升的,需要播放个一个多小时后才能比较明显,好像是;
|
嗯,我一个小时后看heap信息 |
观察到明天,看内存用量能否稳定。 |
kcptun-linux-386-20170313.tar.gz @everfly 观察了一下,稳定到
139MB的堆使用 试下我的0313版本 |
|
@everfly 嗯,可以先替换到0313,另外,能否cat /proc/cpuinfo和 cat /proc/meminfo |
@xtaci 已更换0313,debug info已刷新可以直接访问查看
|
@everfly 好的,非常感谢,一个小时后观察。 |
目前看来正常,15MB |
目前消耗 46MB @everfly 是否正常,一个小时过去了。 |
暂时不在电脑前,中午看看,这个内存是慢慢增加的,所以这个是需要看趋势的。。。 |
kcptun-linux-386-20170313.tar.gz 这个是做过队列优化的,可以减少内存分配。可以试下。 之前版本的目前状况是:
78MB |
@everfly @huawuxin @BH4WHN @bettermanbao 最近的累积优化已经整理发布到0313 Release 如果还无法解决,可以通过设定GOGC有效的缓解。之前稳定在40MB的只是一种偶然的平衡,GC频率目前很低。
提高GC频率,可以有效降低内存用量。 |
0303版开始的编译环境,跟0221版严格一致吗?有没有升级过编译器、或者修改过相关设置? |
@huawuxin 一致的,golang 1.8 darwin/amd64,第三方依赖都是一致的。 |
3月后的各版确实有BUG,我的是Bandwagon主机Centos 6 x86_64,1个G内存. |
@colalan 以0313版本为基础测试。 |
此贴先关,以0313版本为观察基础讨论此贴:#417 |
经过5天排查,真正内存泄漏原因疑似发现。 |
3月的服务器版本好像都有内存泄漏(用过3月1号,2号,3号),我用的是linux_amd64(client 和server都是),2月份的好像没有,我现在换成2月的试试,配置什么的都没有改过,还是说新版本有新策略???
图片中很急的拐点都是我重启的时候,我的vps本来每天5点左右就会重启
The text was updated successfully, but these errors were encountered: