阅读更多
AutoLoadCache 4.12 发布了,AutoLoadCache 是基于AOP+Annotation等技术实现的高效的缓存管理解决方案,实现缓存与业务逻辑的解耦,并增加异步刷新及“拿来主义机制”,以适应高并发环境下的使用。
修改日志:
1、fastjson deepClone 数组中有Map或Collection时,转换失败的问题
2、Fastjson深度复制优化:针对深度复制Method的arguments进行优化,通过method.getGenericParameterTypes() 来方便深度复制泛型参数。
3、使用 ThreadLocal 缓存Random,提升获取随机数性能
4、将异步刷新线程设置为守护线程。
5、ICacheManager中的get和set方法中,增加Method method和 Object args[]两个参数,方便使用者根据情况进行扩展,比如:增加一些自定义的注解,来处理特殊业务逻辑(比如:增加本地缓存功能)

最后总结一下使用fastjson做deepClone的限制,因为json中是不包类信息,而且在有些情况泛型是会补擦除,所以要使用fastjson进行deepClone话,必须要能获得到泛型的ParameterType。

补充4.11的更新内容:

1、增加刷新缓存数据功能,如果不使用自动加载,则在缓存即将过期时(必须在这个期间有用户请求数据),开启线程进行异步刷新数据,可以减少用户的等待,避免因缓存失效失效造成系统压力过大;
2、在刷新缓存和自动加载缓存中,如果从数据层加载数据时,发生异常,则使用旧数据进行续租(如果有旧数据的话),达到提前预防缓存失效后,系统压力过大问题;
3、解决使用fastjson进行深度复制数据组时,转换错误的问题;
4、将数据加载功能从AbstractCacheManager中移到DataLoader中,使得代码更加清晰易懂;
来自: github
1
0
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

Global site tag (gtag.js) - Google Analytics