如何实现.NetCore接口缓存以应对长尾词查询效率问题?

2026-04-01 10:290阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1815个文字,预计阅读时间需要8分钟。

如何实现.NetCore接口缓存以应对长尾词查询效率问题?

1、问题:我们平时做开发的时候,肯定都会用到缓存这个功能,一般写法是在需要的业务代码中读取缓存、判断是否存在、不存在则读取数据库再设置缓存这样一个步骤。但是如果我们“

如何实现.NetCore接口缓存以应对长尾词查询效率问题?

1、问题:我们平时做开发的时候肯定都有用到缓存这个功能,一般写法是在需要的业务代码里读取缓存、判断是否存在、不存在则读取数据库再设置缓存这样一个步骤。但是如果我们有很多地方业务都有用到缓存,我们就需要在每个地方都写关于缓存的代码,这样会造成很多重复代码,同时对业务侵入不利于后续的开发维护。

2、一般的解决办法是将缓存的功能提取出来,然后在需要用到缓存的地方调用即可。这样确实减少了很多重复代码,但这样还是会存在整个项目通用的缓存功能侵入业务代码,那我们有什么办法将缓存功能完全提取出来,达到业务代码零侵入呢?

3、既然我们缓存存的是接口的业务数据,那么为何我们不能直接把整个接口缓存起来呢,即将整个接口返回的数据缓存?同时要达到业务零侵入,那我们是不是想到了反射、特性呢?没错,我们使用的就是ActionFilterAttribute,关于ActionFilterAttribute无非就是OnActionExecuting(执行动作方法前触发)、OnActionExecuted(执行动作方法后触发)、OnResultExecuting(在执行操作结果之前触发)、OnResultExecuted(在执行操作结果之后触发)这四个方法,相信很多小伙伴都用到过,这里就不细说了。

阅读全文

本文共计1815个文字,预计阅读时间需要8分钟。

如何实现.NetCore接口缓存以应对长尾词查询效率问题?

1、问题:我们平时做开发的时候,肯定都会用到缓存这个功能,一般写法是在需要的业务代码中读取缓存、判断是否存在、不存在则读取数据库再设置缓存这样一个步骤。但是如果我们“

如何实现.NetCore接口缓存以应对长尾词查询效率问题?

1、问题:我们平时做开发的时候肯定都有用到缓存这个功能,一般写法是在需要的业务代码里读取缓存、判断是否存在、不存在则读取数据库再设置缓存这样一个步骤。但是如果我们有很多地方业务都有用到缓存,我们就需要在每个地方都写关于缓存的代码,这样会造成很多重复代码,同时对业务侵入不利于后续的开发维护。

2、一般的解决办法是将缓存的功能提取出来,然后在需要用到缓存的地方调用即可。这样确实减少了很多重复代码,但这样还是会存在整个项目通用的缓存功能侵入业务代码,那我们有什么办法将缓存功能完全提取出来,达到业务代码零侵入呢?

3、既然我们缓存存的是接口的业务数据,那么为何我们不能直接把整个接口缓存起来呢,即将整个接口返回的数据缓存?同时要达到业务零侵入,那我们是不是想到了反射、特性呢?没错,我们使用的就是ActionFilterAttribute,关于ActionFilterAttribute无非就是OnActionExecuting(执行动作方法前触发)、OnActionExecuted(执行动作方法后触发)、OnResultExecuting(在执行操作结果之前触发)、OnResultExecuted(在执行操作结果之后触发)这四个方法,相信很多小伙伴都用到过,这里就不细说了。

阅读全文