开源博客项目Blog .NET Core源码学习(8:EasyCaching使用浅析)

开源博客项目Blog使用EasyCaching模块实现缓存功能,主要是在App.Framwork项目中引用了多类包,包括内存缓存(EasyCaching.InMemory)、Redis缓存(EasyCaching.CSRedis),同时支持多种序列化方式(EasyCaching.Serialization.Json、EasyCaching.Serialization.MessagePack)。

  在App.Hosting项目的Program.cs文件中,调用AddEasyCaching函数注册EasyCaching服务,同时根据当前项目appsettings.json的SysConfig块中UseRedis参数设置采用redis缓存(值为true)或内存缓存(值为false),同时在appsettings.json的easycaching块中设置redis及内存缓存的相关参数。

整个解决方案中共有以下几处用到EasyCaching:
  1)App.Application项目的SysPermissionService类 ,该类使用IEasyCachingProvider接口缓存访问权限、访问菜单等信息,缓存有效期为1天;
  2)App.Core项目的SqlSugarCache类,该类用于ORM缓存,主要在注册SqlSugar服务时调用,如下图所示:

  3)App.Framwork项目的AspectCoreInterceptorAutofacExtensions类,该类用于注册EasyCaching相关的类,如DefaultEasyCachingKeyGenerator、EasyCachingInterceptor,但后续的用途没有看的太明白。

参考文献:

[1]https://gitee.com/miss_you/Blog

[2]https://www.donet5.com/Home/Doc

[3]https://easycaching.readthedocs.io/en/latest/

相关推荐
云樱梦海1 个月前
Sonic:开源Go语言开发的高性能博客平台
开发语言·golang·开源·博客·sonic
魔众1 个月前
一个桌面工具条系统,插件一键启动,快速扩展提高工作效率
开源·php·laravel·blog
我叫czc1 个月前
【数字花园】个人知识库网站搭建:⑤本地构建+云服务器部署数字花园plus
笔记·博客·教程·网站搭建·数字花园·第二大脑·网站搭建教程
azoux2 个月前
Astro Zen Blog |一个优雅、极简、强大的博客
astro·blog·静态博客
伊织code2 个月前
CSDN 博客自动发布脚本(Python 含自动登录、定时发布)
python·博客·登录·csdn·自动发布·定时
虞泽3 个月前
鸢尾博客项目开源
java·spring boot·vue·vue3·博客
明月登楼3 个月前
使用 CDN 后 Apache 的日志记录客户真实 IP
服务器·apache·博客·cdn·客户真实ip地址·独立博客
苹果醋34 个月前
毕业设计_基于SpringBoot+vue的社区博客系统【源码+SQL+教程+可运行】41002
java·毕业设计·博客
明明明h4 个月前
复制他人 CSDN 文章到自己的博客
博客·csdn
寒山李白4 个月前
VuePress搭建文档网站/个人博客(详细配置)主题配置-侧边栏配置
前端·vue.js·vue·博客·vuepress·网站