分析与设计
目录总览
|--- Producer.php
|--- Consumer.php
|--- Queue.php
|--- Driver
|---|--- QueueI.php
|---|--- MysqlDriver.php
|---|--- RedisDriver.php
|---|--- Job.php
|--- queue.sql
文件作用介绍
- Producer.php
生产者,用于生成消息 - Consumer.php
消费者,用于消费消息 - Queue.php
队列操作类,为生产者和消费者提供一组统一的消息队列操作接口 - Driver/QueueI.php
队列操作接口,规范为Queue.php提供具体服务的驱动类,所有驱动类必须实现此接口,以确保有能力为Queue.php提供底层服务 - Driver/MysqlDriver.php
Mysql队列操作驱动,负责与Mysql的底层操作 - Driver/RedisDriver.php
Redis队列操作驱动,负责与Redis的底层操作 - Driver/Job.php
统一的消息结构(数据格式),可以参考下面《数据格式》的介绍理解此文件的作用 queue.sql
这是一个 sql 文件,里面是 mysql 消息队列表的表结构数据格式
接着,我们需要统一「消息」的格式。
我们知道,生产者和消费者,同时依赖于消息队列,它们对消息进行处理的时候,则依赖于消息格式。
统一的消息格式,就像是面向对象中的接口,使调用方和实现方,都在规范轨迹之内工作。
所以,我们添加了一个文件:-
调用流程