微服务 教程
1085个小节阅读:196.3k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
在Shiro中,每次拦截请求进行鉴权,都会去数据库查询该用户的权限信息。因为用户的权限信息在短时间内是不可变的,每次查询出来的数据其实都是重复数据,此时就会非常浪费资源。所以一般我们会将权限数据放在缓存中进行管理,这样我们就不用每次请求都查询数据库,提升了系统性能。
缓存即存在于内存中的一块数据。数据库的数据是存储在硬盘上的,而内存的读写效率要远远的高于数据库。但硬盘中保存的数据是持久化数据,断电后依然存在;而内存中保存的是临时数据,随时可能清空。所以我们为了提升系统性能,减少程序和数据库的交互,会将经常查询但不常改变的,改变后对结果影响不大的数据放入缓存中。
Shiro支持多种缓存产品,在课程中我们使用ehcache缓存用户的权限数据。