SimpleAdmin手摸手教学之:系统缓存

一、说明

系统中有很多数据是不会经常修改的,但是读取的频率确很高,所以这时候就需要使用缓存将这些数据缓存起来。本系统支持MemeryCache和Redis分布式缓存两种方式,将一些基本信息表缓存在内存中,可以大大减少数据库压力,提高读取速度。关于Redis的说明和安装请自行百度,win下都是一键安装的。推荐使用Another Redis Desktop Manager可视化工具来查看缓存信息。

二、使用缓存

系统缓存已封装成缓存插件,类库名为SimpleAdmin.Plugin.Cache

Redis的.net客户端我使用的是自己封装的SimpleRedis,支持注入多个redis客户端,非常好用,gitee地址:https://gitee.com/zxzyjs/SimpleRedis.git

项目启动之前需要配置缓存信息,找到SimpleAdmin.Plugin.Cache缓存插件,修改配置文件,如果不用Redis的话,下面的redis配置可以不填。

系统启动后会根据配置文件自动注册缓存服务。

注册的服务是单例的,不需要担心生命周期问题,直接在构造函数中注入就行。

一些不支持注入的类可以使用FruionApp.GetService方法获取实例。

三、AOP缓存

本系统同样支持Aop缓存,只需要给服务贴上Injection特性即可。

然后在方法上加上Cache特性即可。

缓存特性支持的属性:

注意的是,Aop方法只能作用于接口上,方法内部调用不会走Aop,通过xxService.xxx执行的方法会走aop,而在xxService的xxx方法中调用了另一个有cache特性的方法则不会走aop。

posted @ 2023-01-10 10:14  HuTiger  阅读(1340)  评论(0编辑  收藏  举报