开源博客项目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,但后续的用途没有看的太明白。

参考文献:

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

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

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

相关推荐
SEO_juper18 小时前
博客文章黄金结构:开头 1 句痛点 + 3 小标题 + 对比 + 总结 + 下载
人工智能·博客·外贸·geo·独立站·跨境电商独立站·文章结构
Qres8219 天前
Hexo博客本地配置
前端·博客·hexo
X档案库12 天前
告别臃肿与残缺!MarkShareX——AI原生+Rust轻量自托管Markdown博客,一站式建站首选
ai·博客·markdown
REDcker1 个月前
个人博客网站建设指南 Markdown资产化与静态站选型部署
前端·后端·博客·markdown·网站·资产·建站
其实防守也摸鱼1 个月前
CSDN博客写什么?从0到1打造你的技术影响力
笔记·测试用例·博客·教程·ai写作·ai辅助·高质量
杨浦老苏1 个月前
基于MongoDB Atlas的博客热榜
数据库·博客·blog·waline
bingo彬哥2 个月前
AI新时代下的图床管理方案-Cloudflare图床+MCP+Skills方案指南
博客·ai工具
我的golang之路果然有问题4 个月前
使用 Hugo + GitHub Pages + PaperMod 主题 + Obsidian 搭建开发博客
golang·go·github·博客·个人开发·个人博客·hugo
杨浦老苏5 个月前
将Waline从LeanCloud迁移到MongoDB
数据库·博客·blog·waline