laravel created_at 时间戳_laravel框架安装rabbitMQ

laravel框架的版本是5.8

1 laravel添加rabbitMQ
2 composer require vladimir-yuldashev/laravel-queue-rabbitmq
3composer update 

config/app.php文件中,providers数组中添加

VladimirYuldashevLaravelQueueRabbitMQLaravelQueueRabbitMQServiceProvider::class,

app/config/queue.php文件中,connections数组中添加

'rabbitmq' => [
    'driver'                => 'rabbitmq',
 
    'host'                  => env('RABBITMQ_HOST', '127.0.0.1'),
    'port'                  => env('RABBITMQ_PORT', 5672),
 
    'vhost'                 => env('RABBITMQ_VHOST', '/'),
    'login'                 => env('RABBITMQ_LOGIN', 'guest'),
    'password'              => env('RABBITMQ_PASSWORD', 'guest'),
 
    'queue'                 => env('RABBITMQ_QUEUE'), // name of the default queue,
 
    'exchange_declare'      => env('RABBITMQ_EXCHANGE_DECLARE', true), // create the exchange if not exists
    'queue_declare_bind'    => env('RABBITMQ_QUEUE_DECLARE_BIND', true), // create the queue if not exists and bind to the exchange
 
    'queue_params'          => [
        'passive'           => env('RABBITMQ_QUEUE_PASSIVE', false),
        'durable'           => env('RABBITMQ_QUEUE_DURABLE', true),
        'exclusive'         => env('RABBITMQ_QUEUE_EXCLUSIVE', false),
        'auto_delete'       => env('RABBITMQ_QUEUE_AUTODELETE', false),
    ],
 
    'exchange_params' => [
        'name'        => env('RABBITMQ_EXCHANGE_NAME', null),
        'type'        => env('RABBITMQ_EXCHANGE_TYPE', 'direct'), // more info at http://www.rabbitmq.com/tutorials/amqp-concepts.html
        'passive'     => env('RABBITMQ_EXCHANGE_PASSIVE', false),
        'durable'     => env('RABBITMQ_EXCHANGE_DURABLE', true), // the exchange will survive server restarts
        'auto_delete' => env('RABBITMQ_EXCHANGE_AUTODELETE', false),
    ],
 
],

.env中添加

QUEUE_CONNECTION=rabbitmq  #修改一下

RABBITMQ_HOST=112.74.182.5  #要连接的主机名
RABBITMQ_PORT=5672         #端口号
RABBITMQ_VHOST=/
RABBITMQ_LOGIN=admin       #mq登录名
RABBITMQ_PASSWORD=admin     #mq登录密码
RABBITMQ_QUEUE=test11111         #mq连接的名称(随便写)

测试rabbitmq在laravel中的使用

创建一个任务类

php artisan make:job Queue

修改QueuedTest.php的内容,下面主要的功能是添加一个时间并且转化成json

<?php

namespace AppJobs;


use IlluminateBusQueueable;
use IlluminateFoundationBusDispatchable;
use IlluminateQueueSerializesModels;
use IlluminateQueueInteractsWithQueue;
use IlluminateContractsQueueShouldQueue;

class Queue  implements ShouldQueue
{
    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;

    private $data;

    /**
     * Queue constructor.
     * @param $data
     */
    public function __construct($data)
    {
        $this->data = $data;

    }

    /**
     * Execute the job.
     *
     * @return void
     */
    public function handle()
    {
        return json_encode($this->data);

    }
}

使用命令创建一个控制器

php artisan make:controller QueuedController

在控制器中加入如下代码

<?php

namespace AppHttpControllers;


use IlluminateHttpRequest;

use AppHttpRequests;
use AppJobsQueue;

class QueuedController extends Controller
{
    public function Test(){

        $arr=array(
            'time'=>time()
        );

        $this->dispatch(new Queue($arr));

        echo "成功";
} }

在web.php 中加入一个路由,用来调用控制器中的test方法

Route::get('/test','QueuedController@test');

开始测试:http://www.aa.com/index.php/test

edb8a3c26c110d30c38ba6cf910067de.png

并且输入命令 php artisan queue:work 可以看到

5ac48c736175e6cf4c807c279d56391d.png

打开rabbitMQ中可以看到

290a2496740fbadecf47688b60058c87.png

完毕。

以上内容希望帮助到大家,很多PHPer在进阶的时候总会遇到一些问题和瓶颈,业务代码写多了没有方向感,不知道该从那里入手去提升,对此我整理了一些资料,包括但不限于:分布式架构、高可扩展、高性能、高并发、服务器性能调优、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、Mysql优化、shell脚本、Docker、微服务、Nginx等多个知识点高级进阶干货需要的可以免费分享给大家,需要戳下方

PHP进阶架构师>>>视频、面试文档免费获取​docs.qq.com
cb0fe842760488ed4c567ebaeeb58a34.png

或者关注咱们下面的知乎专栏

PHP大神进阶​zhuanlan.zhihu.com
09f2412c8e2324570c2814c1a2aeaaf0.png
作者:PHP小媛
来源:https://www.cnblogs.com/stj123/p/10794159.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值