一般userid都不是主键 ,一般是购物车id -> 子订单id -> 商品itemid
用户量和数据量很多的话,就是按照uid或者订单号去对库做水平拆分,就是分库分表
然后订单和用户的信息还会有分级缓存,按照数据新鲜度要求去分级
比如订单状态支付状态这种状态类的就是对新鲜度要求最高的数据,一般不能走缓存,不走缓存的意思就是直接查数据库
需要强一致性的需要做分布式锁保证同一时间只有一个transaction能对一个状态做修改
然后按照业务重要的程度,是否影响下单,是否影响支付,是否影响信息展示之类的维度去对信息做分级
然后缓存的刷新还会涉及到db binlog,otter,mq之类的知识