mirror of
https://gitee.com/dromara/sa-token.git
synced 2025-10-21 02:57:23 +08:00
v1.10.0新特性:查询所有会话
This commit is contained in:
48
sa-token-doc/doc/use/search-session.md
Normal file
48
sa-token-doc/doc/use/search-session.md
Normal file
@@ -0,0 +1,48 @@
|
||||
# 会话治理
|
||||
|
||||
尽管框架将大部分操作提供了简易的封装,但在一些特殊场景下,我们仍需要绕过框架,直达数据底层进行一些操作 <br>
|
||||
sa-token提供以下API助你直接操作会话列表
|
||||
|
||||
|
||||
---
|
||||
|
||||
## 具体API
|
||||
|
||||
#### 查询所有token
|
||||
``` java
|
||||
StpUtil.searchTokenValue(String keyword, int start, int size);
|
||||
```
|
||||
|
||||
#### 查询所有账号Session会话
|
||||
``` java
|
||||
StpUtil.searchSessionId(String keyword, int start, int size);
|
||||
```
|
||||
|
||||
|
||||
#### 查询所有令牌Session会话
|
||||
``` java
|
||||
StpUtil.searchTokenSessionId(String keyword, int start, int size);
|
||||
```
|
||||
|
||||
|
||||
#### 参数详解:
|
||||
- `keyword`: 查询关键字,只有包括这个字符串的token值才会被查询出来
|
||||
- `start`: 数据开始处索引, 值为-1时代表一次性取出所有数据
|
||||
- `size`: 要获取的数据条数
|
||||
|
||||
使用示例:
|
||||
``` java
|
||||
StpUtil.searchTokenValue("1000", 0, 10); // 查询value包括1000的所有token,结果集从第0条开始,返回10条
|
||||
```
|
||||
|
||||
|
||||
<br/>
|
||||
|
||||
#### 注意事项:
|
||||
由于会话查询底层采用了遍历方式获取数据,当数据量过大时此操作将会比较耗时,有多耗时呢?这里提供一份参考数据:
|
||||
- 单机模式下:百万会话取出10条token平均耗时 `0.255s`
|
||||
- Redis模式下:百万会话取出10条token平均耗时 `3.322s`
|
||||
|
||||
请根据业务实际水平合理调用API
|
||||
|
||||
|
Reference in New Issue
Block a user