Quote: 引用:Quote: 引用:Quote: 引用:这个关redis什么事?你要保持数据一致性,删除数据后再删除缓存里面的数据就ok了,现在redis在可以登录客户端的情况下可以批量删除redis-cli KEYS "test_*" ------解决思路---------------------- xargs redis-cli DEL用代码的话一般都是先取出key,循环遍历在删除就ok了对缓存了解比较少,缓存有提供除了根据key之外删除数据的方法吗?或者有什么办法在更新数据库的操作过程中获取被更新的数据的key?我觉得你走入了一个误区了缓存中的key一般都是根据你的业务规则生成的,就拿csdn的博客来说,如果我要做缓存,是不是可以用博客的id作为缓存的key,如果博客更新了,这时我们就要更新缓存的数据(保持一致性),博客更新了,服务器是不是可以知道id,你是不是可以用这个id在缓存中找到旧的数据,删除就ok了可能还是太笨,我的意思是比如更新数据库的语句是update table_name set for = ‘bar’ where column_name = 'XXX';我缓存的key肯能的组成是这样:table_name:id,但是我更新数据不是根据ID,是根据其他条件,这个时候怎样获取缓存中受影响的数据呢?
Quote: 引用:Quote: 引用:这个关redis什么事?你要保持数据一致性,删除数据后再删除缓存里面的数据就ok了,现在redis在可以登录客户端的情况下可以批量删除redis-cli KEYS "test_*" ------解决思路---------------------- xargs redis-cli DEL用代码的话一般都是先取出key,循环遍历在删除就ok了对缓存了解比较少,缓存有提供除了根据key之外删除数据的方法吗?或者有什么办法在更新数据库的操作过程中获取被更新的数据的key?我觉得你走入了一个误区了缓存中的key一般都是根据你的业务规则生成的,就拿csdn的博客来说,如果我要做缓存,是不是可以用博客的id作为缓存的key,如果博客更新了,这时我们就要更新缓存的数据(保持一致性),博客更新了,服务器是不是可以知道id,你是不是可以用这个id在缓存中找到旧的数据,删除就ok了
Quote: 引用:这个关redis什么事?你要保持数据一致性,删除数据后再删除缓存里面的数据就ok了,现在redis在可以登录客户端的情况下可以批量删除redis-cli KEYS "test_*" ------解决思路---------------------- xargs redis-cli DEL用代码的话一般都是先取出key,循环遍历在删除就ok了对缓存了解比较少,缓存有提供除了根据key之外删除数据的方法吗?或者有什么办法在更新数据库的操作过程中获取被更新的数据的key?
这个关redis什么事?你要保持数据一致性,删除数据后再删除缓存里面的数据就ok了,现在redis在可以登录客户端的情况下可以批量删除redis-cli KEYS "test_*" ------解决思路---------------------- xargs redis-cli DEL用代码的话一般都是先取出key,循环遍历在删除就ok了
redis-cli KEYS "test_*" ------解决思路---------------------- xargs redis-cli DEL