php如何实现订单自动取消

  • 来源:网络
  • 更新日期:2020-08-12

摘要:php实现订单自动取消的方法:1、通过一个线程去扫描数据库或者数据库定时任务;2、使用Redis;3、通过JDK延迟队列 ;4、用RabbitMQ ActiveMQ JMS进行判断订单是否超时,如果超过时间

php实现订单自动取消的方法:1、通过一个线程去扫描数据库或者数据库定时任务;2、使用Redis;3、通过JDK延迟队列 ;4、用RabbitMQ ActiveMQ JMS进行判断订单是否超时,如果超过时间将消息删除。

推荐:《PHP视频教程》

php 订单超时自动取消方案

订单超时自动取消方案

1、小的项目订单量不大的话,可以采用数据库轮询的方式

小型项目常用方式,通过一个线程去扫描数据库或者数据库定时任务,通过订单时间,判断超时的订单,进行更新状态或者其他操作。

2、Redis

redis是一个开源的、高性能、基于键值对的缓存与存储系统,通过提供多种键值数据类型来适应不同的场景,通过提供多种键值数据适应不同场景来适应缓存与存储的需求,value的类型可以提供String Map List Sets sortedSets类型。

3、JDK延迟队列

DelayQueue 是一个无界阻塞队列,只有在延迟期满时才从中获取元素,放入DelayQueue中的对象需要实现Delayed接口。

4、用RabbitMQ ActiveMQ JMS进行判断订单是否超时,队列中可以设置判断类型 从进入队列开始 如果条件符合,直接持久化,如果超过时间将消息删除。