修复redis查询

pull/730/head
648540858 2023-01-11 11:33:01 +08:00
parent d4fdea3df9
commit fb8a5d483b
3 changed files with 12 additions and 25 deletions

View File

@ -70,7 +70,7 @@ public class VideoStreamSessionManager {
stream ="*";
}
String key = VideoManagerConstants.MEDIA_TRANSACTION_USED_PREFIX + userSetting.getServerId() + "_" + deviceId + "_" + channelId + "_" + callId+ "_" + stream;
List<Object> scanResult = RedisUtil.scan(key, 1);
List<Object> scanResult = RedisUtil.scan(key);
if (scanResult.size() == 0) {
return null;
}

View File

@ -75,7 +75,7 @@ public class RedisCatchStorageImpl implements IRedisCatchStorage {
@Override
public void resetAllSN() {
String scanKey = VideoManagerConstants.SIP_SN_PREFIX + userSetting.getServerId() + "_*";
List<Object> keys = RedisUtil.scan(scanKey, null);
List<Object> keys = RedisUtil.scan(scanKey);
for (Object o : keys) {
String key = (String) o;
RedisUtil.set(key, 1);
@ -129,7 +129,7 @@ public class RedisCatchStorageImpl implements IRedisCatchStorage {
}
@Override
public StreamInfo queryPlayByStreamId(String streamId) {
List<Object> playLeys = RedisUtil.scan(String.format("%S_%s_*_%s_*", VideoManagerConstants.PLAYER_PREFIX, userSetting.getServerId(), streamId), 1);
List<Object> playLeys = RedisUtil.scan(String.format("%S_%s_*_%s_*", VideoManagerConstants.PLAYER_PREFIX, userSetting.getServerId(), streamId));
if (playLeys == null || playLeys.size() == 0) {
return null;
}
@ -141,7 +141,7 @@ public class RedisCatchStorageImpl implements IRedisCatchStorage {
List<Object> playLeys = RedisUtil.scan(String.format("%S_%s_*_*_%s_%s", VideoManagerConstants.PLAYER_PREFIX,
userSetting.getServerId(),
deviceId,
channelId), 1);
channelId));
if (playLeys == null || playLeys.size() == 0) {
return null;
}
@ -278,7 +278,7 @@ public class RedisCatchStorageImpl implements IRedisCatchStorage {
stream,
callId
);
List<Object> streamInfoScan = RedisUtil.scan(key, 1);
List<Object> streamInfoScan = RedisUtil.scan(key);
if (streamInfoScan.size() > 0) {
return (StreamInfo) RedisUtil.get((String) streamInfoScan.get(0));
}else {
@ -310,7 +310,7 @@ public class RedisCatchStorageImpl implements IRedisCatchStorage {
stream,
callId
);
List<Object> streamInfoScan = RedisUtil.scan(key, 1);
List<Object> streamInfoScan = RedisUtil.scan(key);
return (String) streamInfoScan.get(0);
}
@ -399,7 +399,7 @@ public class RedisCatchStorageImpl implements IRedisCatchStorage {
+ channelId + "_"
+ streamId + "_"
+ callId;
List<Object> scan = RedisUtil.scan(key, 1);
List<Object> scan = RedisUtil.scan(key);
if (scan.size() > 0) {
return (SendRtpItem)RedisUtil.get((String)scan.get(0));
}else {
@ -521,7 +521,7 @@ public class RedisCatchStorageImpl implements IRedisCatchStorage {
String key = VideoManagerConstants.PLATFORM_SEND_RTP_INFO_PREFIX
+ userSetting.getServerId() + "_*_*_"
+ channelId + "*_" + "*_";
List<Object> RtpStreams = RedisUtil.scan(key, 1);
List<Object> RtpStreams = RedisUtil.scan(key);
if (RtpStreams.size() > 0) {
return true;
} else {
@ -613,7 +613,7 @@ public class RedisCatchStorageImpl implements IRedisCatchStorage {
stream,
callId
);
List<Object> streamInfoScan = RedisUtil.scan(key, 1);
List<Object> streamInfoScan = RedisUtil.scan(key);
if (streamInfoScan.size() > 0) {
return (StreamInfo) RedisUtil.get((String) streamInfoScan.get(0));
}else {
@ -732,7 +732,7 @@ public class RedisCatchStorageImpl implements IRedisCatchStorage {
String scanKey = VideoManagerConstants.WVP_SERVER_STREAM_PREFIX + userSetting.getServerId() + "_*_" + app + "_" + streamId + "_" + mediaServerId;
OnStreamChangedHookParam result = null;
List<Object> keys = RedisUtil.scan(scanKey, 1);
List<Object> keys = RedisUtil.scan(scanKey);
if (keys.size() > 0) {
String key = (String) keys.get(0);
result = (OnStreamChangedHookParam)RedisUtil.get(key);

View File

@ -864,16 +864,12 @@ public class RedisUtil {
* @param query
* @return
*/
public static List<Object> scan(String query, Integer count) {
public static List<Object> scan(String query) {
if (redisTemplate == null) {
redisTemplate = SpringBeanFactory.getBean("redisTemplate");
}
Set<String> resultKeys = (Set<String>) redisTemplate.execute((RedisCallback<Set<String>>) connection -> {
ScanOptions.ScanOptionsBuilder match = ScanOptions.scanOptions().match("*" + query + "*");
if (count != null) {
match.count(count);
}
ScanOptions scanOptions = match.build();
ScanOptions scanOptions = ScanOptions.scanOptions().match("*" + query + "*").count(1000).build();
Cursor<byte[]> scan = connection.scan(scanOptions);
Set<String> keys = new HashSet<>();
while (scan.hasNext()) {
@ -886,15 +882,6 @@ public class RedisUtil {
return new ArrayList<>(resultKeys);
}
/**
*
* @param query
* @return
*/
public static List<Object> scan(String query) {
return scan(query, null);
}
// ============================== 消息发送与订阅 ==============================
public static void convertAndSend(String channel, JSONObject msg) {
if (redisTemplate == null) {