## **Laravel5.5自带消息队列**
##### <blockquote class="danger"><p>Laravel 队列为不同的后台队列服务提供统一的 API,例如 Beanstalk,Amazon SQS,Redis,甚至其他基于关系型数据库的队列。队列的目的是将耗时的任务延时处理,比如发送邮件,从而大幅度缩短 Web 请求和响应的时间。
队列配置文件存放在 config/queue.php 。每一种队列驱动的配置都可以在该文件中找到,包括数据库,Beanstalkd ,Amazon SQS,Redis,以及同步(本地使用)驱动。其中还包含了一个 null 队列驱动用于那些放弃队列的任务
</blockquote>
--------------------------------------------------------------------------------------------------------------------
1. 配置文件
1.1:.env.production(.env)代码如下所示
```
BROADCAST_DRIVER=log
CACHE_DRIVER=redis
SESSION_DRIVER=redis
SESSION_LIFETIME=120
QUEUE_DRIVER=redis
REDIS_QUEUE=ceshi:save:mongo
REDIS_HOST=lnmp_redis
REDIS_PASSWORD=123456
REDIS_PORT=6379
REDIS_INDEX=1
REDIS_API_INDEX=0
```
.env.production(.env)显示结果

1.2:config/queue.php代码如下所示
```
'redis' => [
'driver' => 'redis',
'connection' => 'default',
'queue' => env('REDIS_QUEUE', 'default'),
'retry_after' => 90,
],
```
config/queue.php显示结果

2. 执行操作
2.1:在容器根目录内,执行命令:php artisan make:job TestJob,生成测试工作类,队列的任务类都默认放在`app/Jobs`目录下。如果这个目录不存在,那当你运行`make:job`Artisan 命令时目录就会被自动创建,生成的类实现了`Illuminate\Contracts\Queue\ShouldQueue`接口,这意味着这个任务将会被推送到队列中,而不是同步执行。

2.2:Jobs/TestJob业务代码如下:


2.3:控制器内业务代码如下:

3. 显示结果
3.1:发送

3.2:显示(数据插入成功,数据库为:dlcs)

- Laravel下载
- 项目管理
- Manager
- Vip专属链接管理
- Api
- Vip专属链接管理(Api)
- php artisan route:list 路由显示不全
- 数据迁移和填充
- Laravel5.5事件监听机制(注册-监听-任务调度)
- 章节1:未启用任务调度
- 章节2:启用任务调度
- 使用记录
- 数据迁移使用记录
- 安装laravel5.5日志观察器
- Laravel5.5消息队列(rabbitmq)
- 1:laravel自带消息队列
- 2:RabbitMq队列使用
- 第三方支付扩展:yansongda/laravel-pay
- 安装指引
- 控制器内使用
- 分表查询(mysql+mongo)
- 前端Vue按钮导出问题
- 单元测试
- 模型使用
- laravel9数据填充
- laravel9子查询
- Laravel反射机制