php mysql预约_php实现预约购买mysql怎样规划?

针对用户设置定期购买商品的需求,提出了一种设计方案,包括预约表和预约配置表,用于存储用户ID、预约金额、预约日期和状态。然而,该方案可能导致大量数据占用。为解决这一问题,寻求更高效的设计,避免频繁的定时任务和过多的数据记录。
摘要由CSDN通过智能技术生成

现在有个客户需求是这样的,

用户在网站可以,预定购买商品。

用户可以修改设置

每7天,买一次,金额是多少

也可以设置每8天,买一次,金额是多少

还可以设置9天,买一次,金额是多少

还可以设置10天,买一次。金额是多少

同时用户可以设置,是否开启,预约购买(定时购买)。

322620580bae72433b7a7a1a03772a27.png

这种需求怎么实现的比较好。我想了好几天,终于有点想明白了。

设置一个->预约表

有,用户id,预约金额(冗余),预约日期,状态

再弄一个->预约配置表

用户id,预约天数,预约金额,预约是否开启

一共2张表。

再后台生成,根据用户设置的预约配置,生成具体的预约单,放到 预约表去。

例如:用户A,id=1000,预约间隔天数:10天

用户id 预约金额 预约日期 状态

1000 2000 2019-4-19 8:05 待执行

1000 2000 2019-4-29 8:05 待执行

1000 2000 2019-5-09 8:05 待执行

1000 2000 2019-5-19 8:05 待执行

1000 2000 2019-5-29 8:05 待执行

1000 2000 2019-6-09 8:05 待执行

1000 2000 2019-6-19 8:05 待执行

这样每个用户生成7个预约单,后台监控,是否需要补单。如果需要补单,就补上。

php轮询,检查预约日期是否超过了当前时间,如果超过了就执行买入操作。

这样设计,还是还觉得不错,现在想想,还有是问题,一个用户就要7天的数据,占用7条数据资源。如果有20万用户,

光这个都要生成,140万个订单, 累计起来数据量很快几百万条,不理想!

有没有一种巧妙的设计,请大神指点一下把!

怎样巧妙的设计出,不用定时器轮询,也不用每个用户都插入7天的数据。

哪位大神,开下脑洞,帮我看看,拜托了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值