Mybatis 二级缓存
2021-07-22 15:25:50 4 举报
Mybatis 二级缓存
作者其他创作
大纲/内容
1、数据库和缓存的数据同步2、什么时候更新缓存
1、rediscache自定义clean规则,清除自己的namespace的缓存,但是无法解决连表查询的脏数据问题2、通过cache-ref / @CacheNameSpaceRef 注解 【分模块】共享缓存 , 可以一定程度解决连表查询脏数据问题,但是更新频繁,性价比低3、实时行要求不高,查询量大,定时刷新缓存,统计、排行功能等
内部缓存
依据key查询缓存中是否已有
将新的结果放入缓存
添加、删除、修改
有,返回
服务器端
清空key一致的缓存
系统管理 => com.qcby.teach.help.mapper.SysUserMapper
数据内容修改 = 需要更新缓存除
ResourceMapper=>UserMapper
后端查询
返回
Redis缓存
客户端(app/小程序/浏览器...)
1、查询,存储到缓存2、缓存的更新与删除=>如果同步错误,会导致查询不出最新的数据,得到的是脏数据3、myabtis 二级缓存,单表的增删改 会自动清除 单表的查询 缓存,但是如果是连表的 无论放到哪一个mapper内都无法做到及时更新缓存
用户
SysRoleMapper+》UserMapper
数据库
UserMapper
第三方缓存
查询
缓存中没有,查询数据库
0 条评论
回复 删除
下一页