优化hook处理速度
This commit is contained in:
@@ -5,9 +5,9 @@ import com.genersoft.iot.vmp.common.StreamInfo;
|
||||
import com.genersoft.iot.vmp.common.SystemAllInfo;
|
||||
import com.genersoft.iot.vmp.gb28181.bean.*;
|
||||
import com.genersoft.iot.vmp.media.zlm.dto.*;
|
||||
import com.genersoft.iot.vmp.media.zlm.dto.hook.OnStreamChangedHookParam;
|
||||
import com.genersoft.iot.vmp.service.bean.GPSMsgInfo;
|
||||
import com.genersoft.iot.vmp.service.bean.MessageForPushChannel;
|
||||
import com.genersoft.iot.vmp.service.bean.SSRCInfo;
|
||||
import com.genersoft.iot.vmp.service.bean.ThirdPartyGB;
|
||||
import com.genersoft.iot.vmp.storager.dao.dto.PlatformRegisterInfo;
|
||||
|
||||
@@ -131,7 +131,7 @@ public interface IRedisCatchStorage {
|
||||
* @param app
|
||||
* @param streamId
|
||||
*/
|
||||
void addStream(MediaServerItem mediaServerItem, String type, String app, String streamId, MediaItem item);
|
||||
void addStream(MediaServerItem mediaServerItem, String type, String app, String streamId, OnStreamChangedHookParam item);
|
||||
|
||||
/**
|
||||
* 移除流信息从redis
|
||||
@@ -165,7 +165,7 @@ public interface IRedisCatchStorage {
|
||||
*/
|
||||
ThirdPartyGB queryMemberNoGBId(String queryKey);
|
||||
|
||||
List<MediaItem> getStreams(String mediaServerId, String pull);
|
||||
List<OnStreamChangedHookParam> getStreams(String mediaServerId, String pull);
|
||||
|
||||
/**
|
||||
* 将device信息写入redis
|
||||
@@ -191,7 +191,7 @@ public interface IRedisCatchStorage {
|
||||
|
||||
void resetAllSN();
|
||||
|
||||
MediaItem getStreamInfo(String app, String streamId, String mediaServerId);
|
||||
OnStreamChangedHookParam getStreamInfo(String app, String streamId, String mediaServerId);
|
||||
|
||||
void addCpuInfo(double cpuInfo);
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ import com.genersoft.iot.vmp.common.SystemAllInfo;
|
||||
import com.genersoft.iot.vmp.common.VideoManagerConstants;
|
||||
import com.genersoft.iot.vmp.conf.UserSetting;
|
||||
import com.genersoft.iot.vmp.gb28181.bean.*;
|
||||
import com.genersoft.iot.vmp.media.zlm.dto.MediaItem;
|
||||
import com.genersoft.iot.vmp.media.zlm.dto.hook.OnStreamChangedHookParam;
|
||||
import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem;
|
||||
import com.genersoft.iot.vmp.media.zlm.dto.StreamAuthorityInfo;
|
||||
import com.genersoft.iot.vmp.service.bean.GPSMsgInfo;
|
||||
@@ -573,14 +573,14 @@ public class RedisCatchStorageImpl implements IRedisCatchStorage {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addStream(MediaServerItem mediaServerItem, String type, String app, String streamId, MediaItem mediaItem) {
|
||||
public void addStream(MediaServerItem mediaServerItem, String type, String app, String streamId, OnStreamChangedHookParam onStreamChangedHookParam) {
|
||||
// 查找是否使用了callID
|
||||
StreamAuthorityInfo streamAuthorityInfo = getStreamAuthorityInfo(app, streamId);
|
||||
String key = VideoManagerConstants.WVP_SERVER_STREAM_PREFIX + userSetting.getServerId() + "_" + type + "_" + app + "_" + streamId + "_" + mediaServerItem.getId();
|
||||
if (streamAuthorityInfo != null) {
|
||||
mediaItem.setCallId(streamAuthorityInfo.getCallId());
|
||||
onStreamChangedHookParam.setCallId(streamAuthorityInfo.getCallId());
|
||||
}
|
||||
RedisUtil.set(key, mediaItem);
|
||||
RedisUtil.set(key, onStreamChangedHookParam);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -638,13 +638,13 @@ public class RedisCatchStorageImpl implements IRedisCatchStorage {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<MediaItem> getStreams(String mediaServerId, String type) {
|
||||
List<MediaItem> result = new ArrayList<>();
|
||||
public List<OnStreamChangedHookParam> getStreams(String mediaServerId, String type) {
|
||||
List<OnStreamChangedHookParam> result = new ArrayList<>();
|
||||
String key = VideoManagerConstants.WVP_SERVER_STREAM_PREFIX + userSetting.getServerId() + "_" + type + "_*_*_" + mediaServerId;
|
||||
List<Object> streams = RedisUtil.scan(key);
|
||||
for (Object stream : streams) {
|
||||
MediaItem mediaItem = (MediaItem)RedisUtil.get((String) stream);
|
||||
result.add(mediaItem);
|
||||
OnStreamChangedHookParam onStreamChangedHookParam = (OnStreamChangedHookParam)RedisUtil.get((String) stream);
|
||||
result.add(onStreamChangedHookParam);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
@@ -716,14 +716,14 @@ public class RedisCatchStorageImpl implements IRedisCatchStorage {
|
||||
|
||||
|
||||
@Override
|
||||
public MediaItem getStreamInfo(String app, String streamId, String mediaServerId) {
|
||||
public OnStreamChangedHookParam getStreamInfo(String app, String streamId, String mediaServerId) {
|
||||
String scanKey = VideoManagerConstants.WVP_SERVER_STREAM_PREFIX + userSetting.getServerId() + "_*_" + app + "_" + streamId + "_" + mediaServerId;
|
||||
|
||||
MediaItem result = null;
|
||||
OnStreamChangedHookParam result = null;
|
||||
List<Object> keys = RedisUtil.scan(scanKey);
|
||||
if (keys.size() > 0) {
|
||||
String key = (String) keys.get(0);
|
||||
result = (MediaItem)RedisUtil.get(key);
|
||||
result = (OnStreamChangedHookParam)RedisUtil.get(key);
|
||||
}
|
||||
|
||||
return result;
|
||||
|
||||
Reference in New Issue
Block a user