cache使用redis能够保存数组,为何还需要用hash来作购物车?

来源:7-15 前端用户登录逻辑开发-基于redis+token

stevenfung

2020-10-07

既然我们使用redis作缓存,能够缓存数组,我们直接使用这个功能就可以代替redis的哈希作购物车了。
这样可以吗?或者会用什么不好?

写回答

1回答

天经地义

2020-10-08

用cache数组也是可以实现,但是有个弊端就是,我要获取某一个人的购物车数据,你也要将整个数据获取出来,然后再取数组中的某个值,在更新或者插入某个人的数据时候,也需要先获取整个购物车数据,更新完数组再更新回去redis,数据量一大会浪费很多带宽和redis性能,很影响效率

而hash不管是插入更新还是获取都可以不需要获取整个hash的值,只获取hash中的某一个域(单个用户数据)

HSET key field value  #将哈希表 key 中的字段 field 的值设为 value
HGET key field # 获取哈希表 key 中的字段 field

     ——————来自singwa助教

3
0

全流程开发 TP6.0实战高并发电商服务系统

一课就能掌握TP6.0基础及运用,打造完整高并发的电商后端项目

1458 学习 · 1310 问题

查看课程