Commit 68c7e44c by 罗长华

Merge remote-tracking branch 'origin/xiaohudou_20220427' into xiaohudou_20220427

parents 591e111e 535fc25c
package com.wecloud.im.ws.cache; package com.wecloud.im.ws.cache;
import com.alibaba.fastjson.JSON;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -41,11 +42,19 @@ public class UserStateCacheManager extends UserStateListener { ...@@ -41,11 +42,19 @@ public class UserStateCacheManager extends UserStateListener {
String[] split = platformAndIp.split(RedisUtils.SPLIT); String[] split = platformAndIp.split(RedisUtils.SPLIT);
String innerPlatform = split[0]; String innerPlatform = split[0];
if(innerPlatform.equals(String.valueOf(platform))) { if(innerPlatform.equals(String.valueOf(platform))) {
// redisUtils.removeForSet(getUserStateCacheKey(clientId), platformAndIp); log.info("ws用户上线删除旧的重复的platform redis key: {}, value: {}, uid: {}, clientId: {}", getUserStateCacheKey(clientId), platformAndIp, longChannelId, clientId);
redisUtils.removeForSet(getUserStateCacheKey(clientId), platformAndIp);
} }
} }
Set<String> platformAndIs = redisUtils.getForSetMembers(getUserStateCacheKey(clientId));
log.info("用户上线存redis 前 redis内容 key {}, value {}", getUserStateCacheKey(clientId), JSON.toJSONString(platformAndIs));
redisUtils.addForSet(getUserStateCacheKey(clientId), platform + RedisUtils.SPLIT + GetIpUtils.getlanIp(), 10, TimeUnit.DAYS); redisUtils.addForSet(getUserStateCacheKey(clientId), platform + RedisUtils.SPLIT + GetIpUtils.getlanIp(), 10, TimeUnit.DAYS);
Set<String> platformAndIsAfter = redisUtils.getForSetMembers(getUserStateCacheKey(clientId));
log.info("用户上线存redis 后 redis内容 key {}, value {}", getUserStateCacheKey(clientId), JSON.toJSONString(platformAndIsAfter));
} }
@Override @Override
...@@ -53,7 +62,7 @@ public class UserStateCacheManager extends UserStateListener { ...@@ -53,7 +62,7 @@ public class UserStateCacheManager extends UserStateListener {
String key = getUserStateCacheKey(clientId); String key = getUserStateCacheKey(clientId);
String value = platform + RedisUtils.SPLIT + GetIpUtils.getlanIp(); String value = platform + RedisUtils.SPLIT + GetIpUtils.getlanIp();
log.info("ws用户离线删除redis key: {}, value: {}, uid: {}, clientId: {}", key, value, longChannelId, clientId); log.info("ws用户离线删除redis key: {}, value: {}, uid: {}, clientId: {}", key, value, longChannelId, clientId);
// redisUtils.removeForSet(key, value); redisUtils.removeForSet(key, value);
} }
/** /**
......
package com.wecloud.im.ws.utils; package com.wecloud.im.ws.utils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.DataAccessException; import org.springframework.dao.DataAccessException;
import org.springframework.data.redis.core.RedisCallback; import org.springframework.data.redis.core.RedisCallback;
...@@ -21,6 +22,7 @@ import java.util.concurrent.TimeUnit; ...@@ -21,6 +22,7 @@ import java.util.concurrent.TimeUnit;
* @Description redis 通用工具类 * @Description redis 通用工具类
* @createTime 2020年04月14日 16:07:00 * @createTime 2020年04月14日 16:07:00
*/ */
@Slf4j
@Component @Component
public class RedisUtils { public class RedisUtils {
...@@ -205,6 +207,7 @@ public class RedisUtils { ...@@ -205,6 +207,7 @@ public class RedisUtils {
* @param key * @param key
*/ */
public void removeForSet(String key, String value) { public void removeForSet(String key, String value) {
log.info("清redis key: {} value {}", key, value);
redisTemplate.opsForSet().remove(key, value); redisTemplate.opsForSet().remove(key, value);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment