logo好方法网

基于redis实现自定义缓存注解的方法


技术摘要:
本发明提供一种基于redis实现自定义缓存注解的方法,属于及微服务架构技术领域,基于redis实现自定义注解缓存的方法,将业务数据通过注解的形式计入缓存,然后各个业务子系统根据需求直接从注解中获取数据,包括:SpringAOP切面编程、获取自定义注解、结合redis进行数  全部
背景技术:
当前,随着互联网架构的扩张,分布式系统变得日趋复杂,越来越多的组件开始走 向分布式化,如微服务、消息收发、分布式数据库、分布式缓存、分布式对象存储、跨域调用, 这些组件共同构成了繁杂的分布式网络。 当某一个应用产生某些业务数据时,其背后可能有很多的业务模块去使用这个业 务模块提供的数据,实现“数据共享管理”。 随着微服务架构的流行,服务按照不同的维度进行拆分,一个完整的项目可能就 需要被拆分成好几个业务模块。同时每一个业务模块可能都需要共同的基础业务数据,比 如用户的基本信息,销售商品的状态等等,或者不同的业务模块之间需要业务数据的同步 或者通知以便业务数据记录的变更。因此,就需要一些可以共享和存储管理业务数据或者 临时数据的工具。
技术实现要素:
本发明的技术任务是解决现有技术的不足,提供一种基于redis实现自定义缓存 注解的方法。 本发明解决其技术问题所采用的技术方案是: 基于redis实现自定义缓存注解的方法,基于redis实现自定义注解缓存的方法, 将业务数据通过注解的形式计入缓存,然后各个业务子系统根据需求直接从注解中获取数 据。 可选地,包括:SpringAOP切面编程、获取自定义注解、结合redis进行数据管理。 可选地,基于SpringAOP切面编程缓存注解说明: @Cacheable@CachePut@CacheEvict(多个展示使用空格分隔) @Cacheable:用于根据方法的请求参数对其结果进行缓存; @CachePut:用于根据方法的请求参数对其结果进行缓存,与@Cacheable不同的 是,它每次都会触发真实方法的调用; @CacheEvict:用于根据一定的条件对缓存进行清空。 可选地,所述自定义注解是指通过spring的Annontation引入的新特征,提供一种 安全的类似注释的机制,用来将任何的信息或元数据与程序元素进行关联。 可选地,结合redis进行数据管理是指: 1)缓存先从redis读,当读取不到直接去检索数据库; 2)redis缓存后mq发送消息通知。 4 CN 111596922 A 说 明 书 2/4 页 可选地,所述@Cacheable标记在一个类上或标记在一个方法上,当标记在一个类 上时表示该类所有的方法都是支持缓存的,当标记在一个方法上是表示该方法是支持缓存 的。 可选地,所述@Cacheable指定三个属性,value、key和condition,其中: Value:value属性是必须指定的,其表示当前方法的返回值是会被缓存在哪个 Cache上的,对应Cache的名称. Key:key属性是用来指定Spring缓存方法的返回结果时对应的key的。该属性支持 SpringEL表达式。当我们没有指定该属性时,将使用默认策略生成key,key生成策略自定 义; Condition:其值是通过SpringEL表达式来指定的,当为true时表示进行缓存处 理;当为false时表示不进行缓存处理,即每次调用该方法时该方法都会执行一次; 对于一个支持缓存的方法,Spring会在其被调用后将其返回值缓存起来,以保证 下次利用同样的参数来执行该方法时可以直接从缓存中获取结果,而不需要再次执行该方 法。 可选地,所述@ C a c h e E v i c t指定的属性有va l u e、k e y、c o n d i t i o n、 beforeInvocation。 可选地,beforeInvocation是指:清除操作默认是在对应方法成功执行之后触发 的,即方法如果因为抛出异常而未能成功返回时也不会触发清除操作。 可选地,使用beforeInvocation可以改变触发清除操作的时间,当我们指定该属 性值为true时,会在调用该方法之前清除缓存中的指定元素。 本发明的一种基于redis实现自定义缓存注解的方法与现有技术相比所产生的有 益效果是: 本专利按照低耦合易部署的理论和方法,提出了用自定义redis实现注解来管理 和完善业务需求,通过注解的方式完美的解决了应用系统代码的冗余和重复编写,可以让 系统自身的需求达到可控的目的。也大大提高了系统性能,并且减少了运维成本,提高开发 效率,而且还可以协助开发人员进行白盒测试。 附图说明 为了更清楚地描述本发明一种基于redis实现自定义缓存注解的方法的工作原 理,下面将附上简图作进一步说明。 附图1是本发明一种基于redis实现自定义缓存注解的方法的结构图。
下载此资料需消耗2积分,
分享到:
收藏