J2Cache的clear函数删L1不删L2?
@红薯 你好,想跟您请教个问题:
我发现RedisCache里的jedis.del(region + ":*");不起作用,L2并未删除,这是为什么?
是因为redis处理这个麻烦吗?
---------------问题补充---------------
其实我已经在您的基础上添加了OPT_DELETE_REGION消息,该消息确实其作用的,将其他进程的L1的region删除了,但是其他进程却从 L2取到缓存。而我看到CacheChannel里的clear有调用CacheManager.clear(LEVEL_2, region);,所以我认为是RedisCache里的jedis.del(region + ":*");没起作用
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我们用过hxx 操作,在我们系统上性能差
回复
那我还是改回去好了。。。可以用mongodb做缓存吗?
回复
我也遇到同样的问题CacheManager.clear不能清L2的缓存。怎么处理?求教
@红薯 我已经解决了
,我修改了您的RedisCache,使用hget,hset,hdel等操作,代替掉您的region+":S:"+key的策略,成功实现clear函数的同步