Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wecloud_im_server
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
hewei
wecloud_im_server
Commits
68c7e44c
Commit
68c7e44c
authored
May 13, 2022
by
罗长华
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/xiaohudou_20220427' into xiaohudou_20220427
parents
591e111e
535fc25c
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
14 additions
and
2 deletions
+14
-2
core/src/main/java/com/wecloud/im/ws/cache/UserStateCacheManager.java
+11
-2
core/src/main/java/com/wecloud/im/ws/utils/RedisUtils.java
+3
-0
No files found.
core/src/main/java/com/wecloud/im/ws/cache/UserStateCacheManager.java
View file @
68c7e44c
package
com
.
wecloud
.
im
.
ws
.
cache
;
import
com.alibaba.fastjson.JSON
;
import
lombok.extern.slf4j.Slf4j
;
import
java.util.ArrayList
;
...
...
@@ -41,11 +42,19 @@ public class UserStateCacheManager extends UserStateListener {
String
[]
split
=
platformAndIp
.
split
(
RedisUtils
.
SPLIT
);
String
innerPlatform
=
split
[
0
];
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
);
Set
<
String
>
platformAndIsAfter
=
redisUtils
.
getForSetMembers
(
getUserStateCacheKey
(
clientId
));
log
.
info
(
"用户上线存redis 后 redis内容 key {}, value {}"
,
getUserStateCacheKey
(
clientId
),
JSON
.
toJSONString
(
platformAndIsAfter
));
}
@Override
...
...
@@ -53,7 +62,7 @@ public class UserStateCacheManager extends UserStateListener {
String
key
=
getUserStateCacheKey
(
clientId
);
String
value
=
platform
+
RedisUtils
.
SPLIT
+
GetIpUtils
.
getlanIp
();
log
.
info
(
"ws用户离线删除redis key: {}, value: {}, uid: {}, clientId: {}"
,
key
,
value
,
longChannelId
,
clientId
);
//
redisUtils.removeForSet(key, value);
redisUtils
.
removeForSet
(
key
,
value
);
}
/**
...
...
core/src/main/java/com/wecloud/im/ws/utils/RedisUtils.java
View file @
68c7e44c
package
com
.
wecloud
.
im
.
ws
.
utils
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.dao.DataAccessException
;
import
org.springframework.data.redis.core.RedisCallback
;
...
...
@@ -21,6 +22,7 @@ import java.util.concurrent.TimeUnit;
* @Description redis 通用工具类
* @createTime 2020年04月14日 16:07:00
*/
@Slf4j
@Component
public
class
RedisUtils
{
...
...
@@ -205,6 +207,7 @@ public class RedisUtils {
* @param key
*/
public
void
removeForSet
(
String
key
,
String
value
)
{
log
.
info
(
"清redis key: {} value {}"
,
key
,
value
);
redisTemplate
.
opsForSet
().
remove
(
key
,
value
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment