跳到主要内容
CNode

node写的订单

问答
Yyanghanyu198发布于 9 年前最后回复 9 年前
853850

最近写项目 有个需求是当客户下订单如果2分钟没有支付 订单失效。那我怎么知道这个订单在两分钟失效呢!我现在是不断跑脚本去查看有没有失效的订单。

查看回复

回复 (8)

N
NanShanJi#89 年前

疯狂打call

T
think2011#79 年前

访问的时候,再确定状态

L
Lizhooh#69 年前

如果,在失效的时候不用通知用户。四楼正解。

在下次用户查询订单时,再计算是否过期。

From PWA CNode

M
MiYogurt#59 年前

队列

I
im-here#49 年前

创建订单的时候 标记一个创建时间。 后面在别的业务中用到这个订单的时候 用创建时间+有效时间 就是订单的过期时间,这时候检查一下是否过期就行了。 或者直接把订单存到redis里,给一个expire

M
m470075640#39 年前

记录时间节点 标记状态就行 然后如果需要标记失效也可以做个批处理标记

Y
yanghanyu198#29 年前

简单点那个 不太好 不适合大量的订单。键空间通知 对于现在redis 来说 不算太稳定 有时可能失效 接受不到通知

L
Lizhooh#19 年前

简单点:setTimeout + events

复杂点:redis keyspace notification(键空间通知) + subscribe (对某个 key 设置失效时间,在过期时发出通知)

From PWA CNode

参与回复

登录后即可参与回复。登录