sophgo / sophon-stream

Other
66 stars 10 forks source link

encode中encode_type设置为WS时,启动一个client去订阅,机器内存会一直增长 #33

Open yuhan159 opened 1 month ago

yuhan159 commented 1 month ago

encode.json设置"encode_type": 为"WS",我输入RTSP流,sample_interval设置为2,{ "channels": [ { "channel_id": 7, "loop_num": 1, "sample_interval": 2, "source_type": "RTSP", "url": "rtsp://admin:Admin123@10.11.62.242:554/h265/ch33/main/av_stream" } ], "engine_config_path": "../config/258/engine_group.json" } 在页面启动一个client去订阅时,发现机器内存会一直增长,关掉client端后,内存不再增长,但也不会释放;

Yi-sir commented 1 month ago

这个确认下代码是不是最新呢?我们去年就在ws里面增加了队列,按理说内存不会增长了。 近期,我们有使用WS压测过5-6天,没发现内存问题

yuhan159 commented 1 month ago

代码是新的,队列已经加了进去;压测的时候sample_interval你们设置的多少呢? 我这边设置在4及以上时,内存增长到一定量时,就会达到平衡

Yi-sir commented 1 month ago

sample_interval我们应该测试过1/3/5。可以尝试一下把encode element去掉再观察,这样可以确定内存增长是不是来自ws功能。我们使用的websocket代码来自开源库websocketpp,刚刚在这个仓库里搜了下,好像确实有内存泄漏相关的issue,但原作者四年未更新了。如果有ws方面的需求,可以考虑直接使用boost或者使用uWebSockets替换。