由于PHP不支持多线程,但是作为一个完善的系统,有很多操作都是需要异步完成的.为了完成这些异步操作,我们做了一个基于Redis队列任务系统. 大家知道,一个消息队列处理系统主要分为两大部分:消费者和生产者. 在我们的系统中,主系统作为生产者,任务系统作为消费者. 具体的工作流程如下: 1.主系统将需要需要处理的任务名称+任务参数push到队列中. 2.任务系统实时的对任务队列进行pop,pop出来一个任务就fork一个子进程,由子进程完成具体的任务逻辑. 具体代码如下: /** * 启动守护进程…