为什么迁移
在商店安装的子系统默认放C盘,磁盘剩余空间不多了
准备和验证
查询已安装的子系统
1 | wsl -l |
查询wsl安装的Ubuntu24磁盘位置, “Ubuntu-24.04”为需要查询的子系统版本
数据存储在内存中
Redis完全基于内存存储数据,大部分请求是纯内存操作,速度极快。
避免了传统磁盘文件数据存储的磁盘I/O开销。
高效的数据结构
Redis有5种数据类型:String、List、Hash、Set、SortedSet。
不同数据类型使用一个或多个底层数据结构支持,以实现更快的速度。
单线程架构
单线程节省了上下文切换和CPU消耗的时间。
没有竞态条件,无需考虑各种锁问题,避免了死锁导致的性能开销。
允许使用各种“线程不安全”的命令,如Lpush。
虽然是单线程,但Redis的其他功能(如持久化、异步删除、集群数据同步)由额外的线程执行。
单线程易于实现,且CPU不会成为瓶颈,因此采用单线程方案。
前文简单介绍了Keycloak的功能/部署,这里通过一个demo来演示一下如何使用Keycloak实现单点登录(SSO)。
openid认证流程,需要在Keycloak上创建一个realm和client,demo默认使用realm(auth)和client(demo)
打开企业微信三方应用报错,提示如图,检查了服务商后台和后端代码里的各项配置都没错,域名也通过了
验证
最后发现是前端oauth时跳转配置里的appid填错了
1 | // 第三方应用需要在打开的网页里面携带用户的身份信息,第一步需要构造如下的链接来获取code: |
参考文档:
使用dev模式启动,自定义配置可以放到conf下
1 | version: '3.9' |