Open calebzhao opened 6 years ago
2、最终的key是cacheName+key,你如果不想每次都设置一个带冒号的cacheName,默认的cacheName生成方式也是可以定制的:
@Bean
public SpringConfigProvider springConfigProvider() {
return new SpringConfigProvider(){
public CacheNameGenerator createCacheNameGenerator(String[] hiddenPackages) {
return new YourCacheNameGenerator(........){.......};
}
}
}
1、有考虑,准备做。不过最近很忙,啥时候能完成不好说 3、还未评估
谁给你分配的任务,我让他减轻你的工作,专心搞这个。。。
看了几个issue, @areyouok 回复迅速、精准、有耐心,为你点赞
@areyouok 清空缓存能设计一些API么 例如清除全部缓存 或者指定Key(支持通配符)缓存
清空缓存能设计一些API么 例如清除全部缓存 或者指定Key(支持通配符)缓存
技术上难以做到。
@areyouok 清空全部呢? 我现在是拿到连接 清除整个redis数据库的 但是本地 没有入口去清除
我觉得很有清除所有缓存的api必要啊,我现在就是缓存的分页列表集合,更新其中一条 必须得所有缓存都要清除刷新,目前采取的办法是直接去redis删除对应的所有key。暂时能满足我的需求
//清空缓存
RedisFuture<List<String>> redisFuture = statefulRedisClusterConnection.async().keys("viewCfgClllist.*");
try {
List<String> keys = redisFuture.get();
String[] keysArr = new String[keys.size()];
statefulRedisClusterConnection.async().del(keys.toArray(keysArr));
} catch (InterruptedException e) {
log.error("",e);
} catch (ExecutionException e) {
log.error("",e);
}
2、最终的key是cacheName+key,你如果不想每次都设置一个带冒号的cacheName,默认的cacheName生成方式也是可以定制的:
@Bean public SpringConfigProvider springConfigProvider() { return new SpringConfigProvider(){ public CacheNameGenerator createCacheNameGenerator(String[] hiddenPackages) { return new YourCacheNameGenerator(........){.......}; } } }
上述这种方式更改cacheName好像不可以?
1、有考虑,准备做。不过最近很忙,啥时候能完成不好说 3、还未评估
清空缓存能设计一些API么 例如清除全部缓存 或者指定Key(支持通配符)缓存
技术上难以做到。
清空缓存非常有必要,特别是分布式情况,一级缓存需要随着二级缓存变化而变化,这个决定了这个框架的推广程度
清空缓存能设计一些API么 例如清除全部缓存 或者指定Key(支持通配符)缓存
技术上难以做到。
可以考虑通过自己来维护一个keylist来实现这个功能吗
1、不能在一个方法里面调用另一个方法,也进行缓存拦截
2、key的生成策略不能自定义,我希望的是key是user:1这种中间用冒号分割的,而不是user1111111这样一长串的,在使用redis desktop manager这种工具时会以冒号(:)展示成树目录结构,方便观察, 当然把name改成 user: 确实能达到目标,但是感觉别扭。
3、类似spring的组合cache注解,在多个key缓存同一个对象时很有用, 虽然自己能通过api达到目的,但是还要自己写代码写在实现里感觉不好, 注解组合就清晰明了多了