之前写过一篇笔记《Redis实现消息队列》,其中对消息队列以及redis实现消息队列的三种方式进行了介绍。下面来对hyperf实现redis消息队列的源码进行解读,加深对redis如何来实现消息队列的理解。
一、实现Redis消息队列的各个文件
1、DriverInterface
定义了驱动接口
2、DriverFactory
生成驱动:获取不同的驱动实例
3、Driver 抽象类并且实现了DriverInterface接口
注意:这里使用了 implements DriverInterface 但是却并未实现DriverInterface中的方法,目的是让继承Driver的子类去实现接口类的方法
定义了两个抽象方法
1) Retry
2) remove
4、RedisDriver 继承Driver
注意:RedisDriver 并未使用 implements DriverInterface ,但是却实现了DriverInterface中所有定义的方法
Redis实现消息队列的过程几乎都是通过RedisDriver中的各个代码来实现的
驱动配置:config/autoload/async_queue.php