基于的Redis 多店铺购物车设计 购物车用redis还是mysql | 您所在的位置:网站首页 › python写入数据到redis › 基于的Redis 多店铺购物车设计 购物车用redis还是mysql |
购物车为什么要redis来存储 也是为了防止对mysql的冲击 mysql存的是购物车的原始数据 ,redis存储的是原始数据的副本,缓存 数据 ,让前台 的访问直接从redis中去取结果 = 购物车存储功能自己写 一点头绪 没 代码的实现 ??添加的时候将购物车存储到db后,同步到缓存 中,这个逻辑是怎样的,怎么就将这个数据 存储到缓存 中呢 --:会调用一个flushcache方法,传入一个memberid,通过memberid将这个用户下面的所有购物车商品全都查询 出来 ,然后设置利用hash的数据结构 将这些商品集合存储到缓存 中 数据 结构 为: {String,{string,string}}的结构 {KEY,{key,value}} 企业中用到的存储模型:对象 : id : 属性 KEY:user:1:142 key:skuid value:商品的json数据 @Override public void flushCartCache(String memberId) { OmsCartItem omsCartItem = new OmsCartItem(); omsCartItem.setMemberId(memberId); List omsCartItems = omsCartItemMapper.select(omsCartItem); //更新缓存 Jedis jedis = redisUtil.getJedis(); for (OmsCartItem cartItem : omsCartItems) { Map map = new HashMap(); map.put(cartItem.getProductSkuId(), JSON.toJSONString(OmsCartItem.class)); jedis.hmset("user"+ memberId + "cart", map); } jedis.close(); } }购物车列表功能展现是用的一个内嵌页面
|
CopyRight 2018-2019 实验室设备网 版权所有 |