EasyGBS平台出现CPU过高的现象是什么原因?如何解决?
EasyGBS是基于国标GB28181协议的视频平台,可支持视频直播、录像、云存储、检索与回放、云台控制、告警上报、语音对讲等功能。EasyGBS平台功能全面、综合性强、视频能力灵活,能够涵盖所有监控领域的需求,已经在大量的项目中落地应用,如明厨亮灶、平安乡村、雪亮工程等。
有用户反馈,在使用EasyGBS时,出现了CPU过高的情况,请求我们协助排查。今天来和大家分享一下排查及解决办法。
通过pprof工具分析发现,是下级信令异常,频繁发送给上级导致CPU过高。
添加如下代码,将下级的sip消息解析过后,设置对应的频率处理,如果是不重要的消息则直接忽略;如果是需要处理的消息,按照一定的间隔时间来处理,如此可以保证程序的稳定运行。
// Init the output area
out.UriType = ""
out.Method = nil
out.StatusCode = nil
out.User = nil
out.Host = nil
out.Port = nil
out.UserType = nil
out.Src = nil
// Keep the source line if needed
if keep_src {
out.Src = v
}
// Loop through the bytes making up the line
for pos < len(v) {
// FSM
switch state {
case FIELD_NULL:
if v[pos] >= 'A' && v[pos] <= 'S' && pos == 0 {
state = FIELD_METHOD
continue
}
再次运行一段时间后查看EasyGBS页面的数据,此时CPU数据已经显示正常了。
EasyGBS强大的视频能力既可以作为业务平台,也能作为视频能力平台进行调用,此外平台级联功能可以实现平台与平台之间的数据互联互通、资源共享,在应用场景中达到视频资源汇聚、协同监督、平台联动等目的。感兴趣的用户可以前去演示平台进行体验,或者下载进行部署测试,欢迎大家的关注。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结
2021-05-11 为什么国标协议视频云平台EasyGBS平台接入下级平台无法通信并且抓包显示401?
2021-05-11 国标协议视频云平台EasyGBS接入硬盘录像机视频通道不在线的处理方法
2021-05-11 智慧气象:如何利用大数据及安防AI技术进行气象灾害监测预警?
2020-05-11 国标流媒体服务器如何调整接入的视频直播通道数量?
2020-05-11 使用国标流媒体服务器查看监控摄像头视频流如何正确使用UDP及TCP协议?
2020-05-11 如何对不同协议的监控摄像头进行统一管理分发?
2020-05-11 国标流媒体服务器可以接入海康摄像头吗?是否会有断流问题?