
aocache
文章平均质量分 78
10km
这个作者很懒,什么都没留下…
展开
-
aocache:AOCache 新增功能深度解析:从性能监控到灵活配置的全方位升级
aocache通过注解方式定义方法启用计算缓存,对于每一个切入点而言,在编译期就已经定义了缓存的配置(weakKeys,maximumSize,expireAfterAccess等等)。但实际应用场景中,通过AOCache 性能分析结果,可能会发现有些配置对切入点的综合性能提升并不理想,需要调整,这种情况下,如果切入点并不在当前项目,想要根据应用场景修改切点,就会很麻烦。所以需要一种切入点(JoinPoint)自定义配置机制,可以允许通过外部以切入点配置文件的形式对切入点的配置进行调整。通过。原创 2025-03-29 17:36:50 · 1038 阅读 · 0 评论 -
java:aocache 与Spring Aop兼容问题
本文适用于所有AspectJ与Spring AOP混用的场景。Spring AOP 是基于动态代理的实现AOP,基于 JDK代理和CGLib代理实现运行时织入(runtime weaving)。Spring AOP的切面定义沿用了ASpectJ的注解体系,所以在Spring体系中注解定义切面的方式与ASpectJ完全兼容, 但如果一个项目中有Spring 切面定义又要使用静态态织入(CTW)的情况下,就会存在冲突问题。如下面的示例,项目中定义了一个Spring AOP切面,拦截所有带注解的服务方法。原创 2024-07-16 11:33:52 · 528 阅读 · 0 评论 -
java:aocache 0.4.0 缓存控制机制
aoocache发布第一个版本0.1.0时,没有考虑到使用aocache的项目对方法缓存的控制需求。给同事做培训时,同事提到这个需求,他希望能够有方法主动去清理指定方法的缓存:他的数据是由其他服务启动时提供的,他的方法要根据这些数据进行复杂计算返回结果。如果其他服务重启了,会刷新这些数据,如果使用aocache提供的方法缓存机制,他就需要有办法能清理这些缓存。原创 2024-06-29 11:23:04 · 455 阅读 · 0 评论 -
java:aocache的单实例缓存(二)
之前一篇博客介绍了使用注解实现单实例缓存的方式,同时也指出了这种方式的使用限制,就是这个注解定义的构造方法,不能再创建出新实例。为了更灵活方便的实现单实例。aocache最新版本0.4.0增加了支持单实例缓存的工具类SingletonSingleton提供了两种方法分别提供弱引用单实例缓存,和普通强引用单实例。原创 2024-06-29 10:36:34 · 440 阅读 · 0 评论 -
java:aocache:基于aspectJ实现的方法缓存工具
最近一直在做一些服务端的设计,经常遇到常量计算的问题,比如获取查找一个类的所有方法,获取有指定注解(Annnotation)的方法并查找注解的上特定的元注解是否有特定的值。比如在服务端方法拦截器上经常执行这样的计算,事实上在运行时,对于一个类(Class)或方法(Method),它在运行时就是个常量,上述复杂计算返回结果也是一个恒定的值不会改变,称之为常量计算。适用于不需要长期保存的数据。如上的模式大概就是一内一外两个方法,内部方法负责真正的计算由缓存对象调用,外部方法则直接从缓存读取数据提供给调用方。原创 2024-06-26 11:05:50 · 1453 阅读 · 0 评论 -
java:aocache的单实例缓存(一)
定义在构造方法的使用方式是有限制的。因为就无法再创建新实例,如果又希望保持构造方法创建新实例,又能得到单实例缓存。建议不要在构造方法上定义。可以定义在构造方法上,定义在构造方法,该构建方法就成了单实例模式。介绍了aocache的基本使用,也就是说,只要构建方法参数相同,注解注解,而是定义一个有。原创 2024-06-26 11:20:16 · 593 阅读 · 0 评论