关于Redis使用的一点疑问(数据更新)

我怎么觉得redis更新数据很麻烦,是我的理解有问题吗?

现在我是这样的操作.


假设有如下一系列操作
存储了多级商品分类的数组$classify
通过json_encode()序列化后存入了Redis,keyclassify
查一个id1的分类的时候
先查Redis这个classify存在不存在,存在就取出来json_decode()反序列化,然后再找有没有这个id1的分类,没有的话去数据库中查
把这个查到的分类结果$result放进数组$classify,再序列化后存入Redis.(空的结果存个相应的空数组进去防止缓存穿透)


每次有数据更新的话,感觉很麻烦啊,取出来反序列化,数组一系列操作,然后再序列化set进去.
能不能有别的存储方式,直接能把$result插入到redis中相应的位置?
望大神赐教

倚天杖
浏览 427回答 2
2回答

翻过高山走不出你

采用hash会方便一下,hash就相当于对应数据库的一条字段了

忽然笑

通过json_encode()序列化后存入了Redis,key为classify这里其实能否改改key,不要用序列化。key改成多个,这样:classify_id_1;classify_id_2;classify_id_3;classify_id_4;查找起来就好用id查,而且要全部取出(就是还原成你上面那 数组$classify )可以用 KEYS classify_id_* 来取出全部你看可行不
打开App,查看更多内容
随时随地看视频慕课网APP