84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
我做购物车应该用2张表:一个购物车表cart<id> <user_id>
一个cart_item表来记录已经加入购物车的商品
<id> <cart_id> <item_id> <seller_id> <quantity> <create_time> <update_time>
还是,直接用一个user_cart表:
<id> <user_id> <item_id> <seller_id> <quantity> <create_time> <update_time>
购物车数据库表应该如何设计?-PHP中文网问答-购物车数据库表应该如何设计?-PHP中文网问答
围观一下哦,学习一下。
首先,分析题主的问题,你要设计的购物车是给一个什么量级的平台使用,如果使用Mysql数据库设计的话,规模不大,流量不多的情况下是完全没有问题的,但如果流量很大,用户量级上去了是行不通的。所以,推荐根据用户登录和未登录态两种情况来做。1.未登录时,可以采取cookie方式保存,因为存在客户端,可以缓解服务器压力。当用户登录账号后,从cookie取数据保存到redis里面。2,用户登录了,保存购物车数据到redis中那为什么采取这种做法,采用redis因为它保存在内存里所以速度很快,就算有很高的并发,可以采取redis集群的方案来解决,通常我们的做法都是把一些比较热的数据采用redis来保存。后面你可能还会根据用户的购物车记录或者购买记录等等用户行为做一些商品推荐等推送的时候,redis集合的并交集谁用谁知道。说回原题,我就说个简单思路。产品:采用hash表存储,productID,price。。。等等购物车:采用集合存储,因为集合的唯一性,保证一个orderId对应多个商品,再重复一下就是交并差集真的好用。。再细分还可以设计购买物品关联的集合啊,购物记录的有序集合啊等等。以上思路,集体细节还是结合自己的使用情况设计即可。
购物车数据库表应该如何设计?-PHP中文网问答-购物车数据库表应该如何设计?-PHP中文网问答
围观一下哦,学习一下。
首先,分析题主的问题,你要设计的购物车是给一个什么量级的平台使用,如果使用Mysql数据库设计的话,规模不大,流量不多的情况下是完全没有问题的,但如果流量很大,用户量级上去了是行不通的。
所以,推荐根据用户登录和未登录态两种情况来做。
1.未登录时,可以采取cookie方式保存,因为存在客户端,可以缓解服务器压力。当用户登录账号后,从cookie取数据保存到redis里面。
2,用户登录了,保存购物车数据到redis中
那为什么采取这种做法,采用redis因为它保存在内存里所以速度很快,就算有很高的并发,可以采取redis集群的方案来解决,通常我们的做法都是把一些比较热的数据采用redis来保存。
后面你可能还会根据用户的购物车记录或者购买记录等等用户行为做一些商品推荐等推送的时候,redis集合的并交集谁用谁知道。
说回原题,我就说个简单思路。
产品:采用hash表存储,productID,price。。。等等
购物车:采用集合存储,因为集合的唯一性,保证一个orderId对应多个商品,再重复一下就是交并差集真的好用。。
再细分还可以设计购买物品关联的集合啊,购物记录的有序集合啊等等。
以上思路,集体细节还是结合自己的使用情况设计即可。