IndexNow
使用IndexNow可能更加及时推送,也是Bing Webmaster现在推荐的方式
配置
使用github actions定时推送,配置如下,indexnow秘钥存储到github仓库的”Secrets and variables”
| 1 | name: "IndexNow" | 
使用IndexNow可能更加及时推送,也是Bing Webmaster现在推荐的方式
使用github actions定时推送,配置如下,indexnow秘钥存储到github仓库的”Secrets and variables”
| 1 | name: "IndexNow" | 
数据存储在内存中
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' |