TSINGSEE青犀视频开发的视频平台都具备Windows和Linux的运行版本,可以根据需求自由选择。当遇到项目现场有流量较大的情况,大多数用户都比较担心对CPU的占用过大。在EasyGBS的一个现场,客户采用了高码流的摄像头级联到 EasyGBS 中,在运行中发现内存占用非常高,50 路被占用大概 3.021G,而正常是不应该占用这么多内存的。
在该现场中,可以看到系统整体大概会占用50%左右的内存(其中easydss为EasyGBS使用的流媒体分发软件)。
在其他现场并未发现该问题,因此询问该客户对应的码率及摄像头分辨率大小,客户采用的是1980X1080分辨率,理论情况下不会出现占用那么多的内存。后面确认码率为平均6M左右,因此判断是码率过大引起的。
因此从以下几个方面分析可能导致内存过大的原因:
1.rtmp gop 缓存导致
2.flv gop 缓存导致
3.支持 httpts 流播放导致
将对应的 rtmp gop 取消,关闭 httpts 模块,内存使用降低一部分。
将 flv gop 缓存取消后,内存再次降低。
因此在 EasyGBS 等产品中出现现场内存非常高的情况,可以采用将对应的缓存取消的方式来实现降低内存。因为缓存是将对应的数据缓存在内存中,码率很大或者分辨率很大,都会导致内存使用会很高。
取消缓存,会导致 flv 等流无法实现秒开的功能。因此可以针对不同的现场需求,设置是否可以启用缓存。