Sa-Token-Alone-Redis 文档

This commit is contained in:
click33 2021-06-21 22:45:05 +08:00
parent 88c9c87de4
commit 6c874e6737
5 changed files with 103 additions and 25 deletions

View File

@ -13,7 +13,7 @@ import cn.dev33.satoken.stp.StpUtil;
* @author kong
*
*/
@RestController()
@RestController
@RequestMapping("/test/")
public class TestController {

View File

@ -11,7 +11,6 @@ spring:
timeout: 2592000
# Token风格
token-style: uuid
# 配置Sa-Token单独使用的Redis连接
alone-redis:
# Redis数据库索引默认为0
@ -35,28 +34,6 @@ spring:
# 连接池中的最小空闲连接
min-idle: 0
# 业务使用的Redis连接
redis:
# Redis数据库索引默认为0
database: 0
# Redis服务器地址
host: 127.0.0.1
# Redis服务器连接端口
port: 6379
# Redis服务器连接密码默认为空
password:
# 连接超时时间(毫秒)
timeout: 10000ms
lettuce:
pool:
# 连接池最大连接数
max-active: 200
# 连接池最大阻塞等待时间(使用负值表示没有限制)
max-wait: -1ms
# 连接池中的最大空闲连接
max-idle: 10
# 连接池中的最小空闲连接
min-idle: 0

View File

@ -36,8 +36,9 @@
- **插件**
- [AOP注解鉴权](/plugin/aop-at)
- [Quick-Login快速登录插件](/plugin/quick-login)
- [临时Token验证](/plugin/temp-token)
- [Quick-Login快速登录插件](/plugin/quick-login)
- [Alone独立Redis插件](/plugin/alone-redis)
- **其它**
- [更新日志](/more/update-log)

View File

@ -66,6 +66,9 @@ body{font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu
.lang-java .token.annotation.punctuation{color: #ddd;}
.lang-java .token.punctuation{color: #ddd;}
/* yml语言样式优化 */
.main-box .lang-yml{color: #01A252 !important; opacity: 1;}
/* js语言样式优化 */
.main-box .lang-js{color: #01a252 !important;}
.lang-js .token.comment{color: #CDAB53;}

View File

@ -0,0 +1,97 @@
# Sa-Token-Alone-Redis 独立Redis插件
---
Sa-Token默认的Redis集成方式会把权限数据和业务缓存放在一起但在部分场景下我们需要将他们彻底分离开来比如
> 搭建两个Redis服务器一个专门用来做业务缓存另一台专门存放Sa-Token权限数据
要将Sa-Token的数据单独抽离出来很简单你只需要为Sa-Token单独配置一个Redis连接信息即可
---
### 1、首先引入Alone-Redis依赖
``` xml
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-alone-redis</artifactId>
<version>1.20.0</version>
</dependency>
```
### 2、然后在application.yml中增加配置
``` yml
# 端口
spring:
# Sa-Token配置
sa-token:
# Token名称
token-name: satoken
# Token有效期
timeout: 2592000
# Token风格
token-style: uuid
# 配置Sa-Token单独使用的Redis连接
alone-redis:
# Redis数据库索引默认为0
database: 2
# Redis服务器地址
host: 127.0.0.1
# Redis服务器连接端口
port: 6379
# Redis服务器连接密码默认为空
password:
# 连接超时时间(毫秒)
timeout: 10ms
lettuce:
pool:
# 连接池最大连接数
max-active: 200
# 连接池最大阻塞等待时间(使用负值表示没有限制)
max-wait: -1ms
# 连接池中的最大空闲连接
max-idle: 10
# 连接池中的最小空闲连接
min-idle: 0
```
具体可参考:[码云application.yml](https://gitee.com/dromara/sa-token/blob/dev/sa-token-demo/sa-token-demo-alone-redis/src/main/resources/application.yml)
### 3、测试
新建Controller测试一下
``` java
@RestController
@RequestMapping("/test/")
public class TestController {
@Autowired
StringRedisTemplate stringRedisTemplate;
// 测试Sa-Token缓存
@RequestMapping("login")
public AjaxJson login(@RequestParam(defaultValue="10001") String id) {
System.out.println("--------------- 测试Sa-Token缓存");
StpUtil.login(id);
return AjaxJson.getSuccess();
}
// 测试业务缓存
@RequestMapping("test")
public AjaxJson test() {
System.out.println("--------------- 测试业务缓存");
stringRedisTemplate.opsForValue().set("hello", "Hello World");
return AjaxJson.getSuccess();
}
}
```
分别访问两个接口观察Redis中增加的数据
![alone-redis](https://oss.dev33.cn/sa-token/doc/alone-redis.png 's-w')
测试完毕!