-
-
Notifications
You must be signed in to change notification settings - Fork 196
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
CPU占用异常 #71
Comments
查看了最新的日志,发现其中大量出现推流失败的日志如下
在大量推流错误的日志出现之前打印了如下的错误日志
服务端还未重启,可以继续提供解决问题必要的信息 |
感谢反馈。
这个错误日志是前几天你修复的,读数据超时了。
这个日志是RTMP握手日志,先尝试复杂握手,失败后会用简单握手,如果简单握手成功就没有问题。
这个错误没有遇到过,应该是packetizer.rs里面打包的时候,写发送数据出错了,能复现吗?能够提供录制文件?
这个错误的意思是推流的时候发现服务端已经有这个流ID(app name + stream name)了。有两种可能:
这个日志看着逻辑有问题,碰到不识别的msg type id 不应该返回错误,否则整个session就退出了,这个我改下。 看你三个xiu进程的CPU使用率都不太正常,流的转发不太应该占用这么多CPU,你的一个进程中在处理多少路流?之前碰到的CPU高的问题,大多数是读/写数据异常,碰到死循环了,你的最后一个线程栈的图左边是CPU使用率吗,看这个图可能是 receive_frame_data_loop 这个函数里面有问题,有可能有死循环。 关于性能问题,也可以看下项目的wiki中关于如何profile一个xiu 进程,生成 profile文件后可以分析一下。 |
这个出现的频率不高,不太容易复现.. 我会再想想办法
这里应该是第二种可能,在出现了后面的
我目前只在处理一路流,平时CPU占用非常低
刚才我想尝试生成 profile 时发现服务器 SSH 已经没反应了.... 图三中左侧是CPU占用率 |
有可能CPU高的问题也是由session异常退出导致的,我提交了一次代码,你看下 https://github.com/harlanc/xiu/tree/fix_71 |
目前没再复现成功这个问题.. 但出现了新的问题 ffmpeg拉流的时候出现以下错误
ffmpeg中断时,服务器出现以下错误
除此之外没有别的错误信息了 |
这个错误,我这也复现了,在拉流的时候,直接断开就会报这个错误,意思是直接断开了TCP连接,拉流的session也会退出,这个流程看着是正常的,可以先不管吧,我在想要不要把这个error改成info。 ffmpeg拉流失败,应该是packetize rtmp chunk的时候时间戳写错了,推流多长时间才会报这个错误?最好在出错的时候可以抓个网络包,上下行的都要,我这边再分析分析,谢谢 |
我是第三天下午才发现的这个问题,第二天晚上试的时候还是好的 我在服务端抓了推流包和拉流的包,这个传国内网盘吧 |
试了一下最新版本,panic
|
试了一下 03737a0,obs和action推流正常,摄像头推流依然 panic |
不过看样子这个csid 2应该不是音视频包,可以把
这个断言注释掉再试试,这个chunk的msg_streamd_id 就是随机值了,可能不影响功能。 |
抓包数据:
这个我之前尝试过了,packetizer.rs:51 cur_msg_header.timestamp_delta = cur_msg_header.timestamp - pre_msg_header.timestamp; 这里会有问题.. 减出来一个负数,debug下panic了 然后我也试着求他俩的差值,但是播放的时候不太正常,具体表现是前一两秒正常,后面都是慢放 |
加微信吧,github上效率太低,harlancc |
加您了 |
XIU version
matser b2fe9af
Describe the bug
长时间使用后CPU占用率异常升高
配置文件
在之前的沟通中#66,发现我的设备会在每个I帧发送一次metaData 和 sequence header,也是因此日志中大量打印了metadata相关的日志
此外,日志中还偶尔出现以下错误
这里有一些进程/线程的信息不知道对解决问题有没有一些帮助
The text was updated successfully, but these errors were encountered: