1. 修改  .evn 文件中的   QUEUE_CONNECTION=default 设置为 database
  2. 修改config目录下面的queue.php文
    <?phpreturn [/*|--------------------------------------------------------------------------| Default Queue Connection Name|--------------------------------------------------------------------------|| Laravel's queue API supports an assortment of back-ends via a single| API, giving you convenient access to each back-end using the same| syntax for every one. Here you may define a default connection.|*/'default' => env('QUEUE_CONNECTION', 'sync'),/*|--------------------------------------------------------------------------| Queue Connections|--------------------------------------------------------------------------|| Here you may configure the connection information for each server that| is used by your application. A default configuration has been added| for each back-end shipped with Laravel. You are free to add more.|| Drivers: "sync", "database", "beanstalkd", "sqs", "redis", "null"|*/'connections' => ['sync' => ['driver' => 'sync',],'database' => ['driver' => 'database','table' => 'jobs', //根据你使用的表进行更改'queue' => 'default','retry_after' => 90,],'sqs' => ['driver' => 'sqs','key' => env('AWS_ACCESS_KEY_ID'),'secret' => env('AWS_SECRET_ACCESS_KEY'),'prefix' => env('SQS_PREFIX', 'https://sqs.us-east-1.amazonaws.com/your-account-id'),'queue' => env('SQS_QUEUE', 'your-queue-name'),'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),],'redis' => ['driver' => 'redis','connection' => 'default','queue' => env('REDIS_QUEUE', 'default'),'retry_after' => 90,'block_for' => null,],],/*|--------------------------------------------------------------------------| Failed Queue Jobs|--------------------------------------------------------------------------|| These options configure the behavior of failed queue job logging so you| can control which database and table are used to store the jobs that| have failed. You may change them to any database / table you wish.|*/'failed' => ['database' => env('DB_CONNECTION', 'mysql'),'table' => 'failed_jobs',],];
  3. 使用artisan命令生成任务文件    php artisan make:job SendEmail
    <?phpnamespace App\Jobs;use Illuminate\Bus\Queueable;
    use Illuminate\Contracts\Queue\ShouldQueue;
    use Illuminate\Foundation\Bus\Dispatchable;
    use Illuminate\Queue\InteractsWithQueue;
    use Illuminate\Queue\SerializesModels;
    use PHPMailer\PHPMailer\PHPMailer;class SendEmail implements ShouldQueue
    {use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;/*** Create a new job instance.** @return void*/public function __construct(){//这里可以传递参数}/*** Execute the job.** @return void*/public function handle(){$mail = new PHPMailer(true);try {$mail->CharSet = "UTF-8";$mail->isSMTP();                                            // Send using SMTP$mail->Host       = 'smtp.qiye.163.com';                    // Set the SMTP server to send through$mail->SMTPAuth   = true;                                   // Enable SMTP authentication$mail->Username   = '******';                     // SMTP username$mail->Password   = '*****';                               // SMTP password$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;         // Enable TLS encryption; `PHPMailer::ENCRYPTION_SMTPS` also accepted$mail->Port       = 587;                                    // TCP port to connect to//Recipients$mail->setFrom('******', '*****');//发送名称$mail->addAddress('*****');               // 发送给给定的邮箱$mail->addCC('*****');//抄送给相对应的邮箱// 这个方法是发送附件内容的$mail->addAttachment('C:/Users/Administrator/Desktop/图片资源/OK.jpg');         // 添加附件文件
    //            $mail->addAttachment('C:/Users/Administrator/Desktop/图片资源/OK.jpg', 'new.jpg');    // 重命名附件文件名$mail->isHTML(true);                                  // Set email format to HTML$mail->Subject = '这是一份测试邮件';//邮件标题$mail->Body    = 'This is the HTML message body <b>in bold!</b>';//邮件主体内容
    //            $mail->AltBody = 'This is the body in plain text for non-HTML mail clients';$mail->send();echo "邮件发送成功";Log::info('邮件发送成功');} catch (Exception $e) {echo "Message could not be sent. Mailer Error: {$mail->ErrorInfo}";Log::info('邮件发送失败');}}
    }
    
  4. 生成队列任务计划表

    php artisan queue:tablephp artisan queue:failed-tablephp artisan migrate

5.在需要调用队列的方法下面加入该类即可

        $data = ['company'=>'****'];$job=new SendEmail($data);dispatch($job);return ['code'=>1,'msg'=>'发送成功'];

6.在windows中  在项目根目录打开控制台分别 执行

php artisan queue:listen

php artisan queue:work --queue=default,mytask --tries=2

laravel 实现队列功能相关推荐

  1. redis 队列功能

    2019独角兽企业重金招聘Python工程师标准>>> Redis队列功能介绍 List 常用命令: Blpop删除,并获得该列表中的第一元素,或阻塞,直到有一个可用 Brpop删除 ...

  2. Php laravel 队列,Laravel 的队列系统介绍

    这篇文章主要介绍的内容是关于Laravel 的队列系统介绍,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 Laravel 队列为不同的后台队列服务提供统一的 API , 例如 Bean ...

  3. laravel异步队列的使用

    功能实现描述:在做大富翁网页小游戏时候,用户跳转指定步数需要获取相关奖品,例如优惠券,实物奖,此时需要给用户发送系统消息,如果他注册了网站.此时就用到了异步 1.首先在laravel用异步很方便. P ...

  4. C#实现rabbitmq 延迟队列功能

    最近在研究rabbitmq,项目中有这样一个场景:在用户要支付订单的时候,如果超过30分钟未支付,会把订单关掉.当然我们可以做一个定时任务,每个一段时间来扫描未支付的订单,如果该订单超过支付时间就关闭 ...

  5. 十分钟看会laravel导入导出功能,就这么简单

    laravel5扩展包excel导入导出功能 一, 简介 Laravel Excel 在 Laravel 5 中集成 PHPOffice 套件中的 PHPExcel,从而方便我们以优雅的.富有表现力的 ...

  6. Laravel框架登录功能实例

    功能:用于实现登录功能 框架:laravel 5.8 一.添加路由器 Route::group( [ 'middleware'=>[] , 'prefix'=>'admin' , 'nam ...

  7. 无涯教程: Laravel 8 - 队列介绍

    有时,你发送电子邮件或站内消息比较费时,这时可以使用队列处理这些任务. 步骤1:下载Laravel 8 首先,我们需要使用下面命令获取最新的Laravel 8版本应用程序. composer crea ...

  8. laravel 使用队列进行微信模板消息的群发

    前置准备工作 框架:laravel 5.5 公众号:我的是服务号(需要营业执照申请,300一年) PHP版本:7.1 需要自己配置好php环境,安装好redis 直接进入代码主题 php artisa ...

  9. laravel实现文件下载功能

    laravel自带文件下载功能,你可以参考官方文档laravel文件下载功能 download 方法可以用于生成强制让用户的浏览器下载指定路径文件的响应.download 方法接受文件名称作为方法的第 ...

  10. Laravel redis队列不执行

    配置redis队列,以为直接配置env改这个QUEUE_CONNECTION=redis,但是发现实际没有执行队列,如果是datebase或者sync的是没问题,但是redis就有可能出现问题 按照文 ...

最新文章

  1. Java 内存泄漏排查,新技能+1
  2. 服务端php的更新手游客户端,PHP服务器安卓app下载|PHP服务器下载1.11.3 官方移动客户端-PHP服务器官方移动客户端1.11.3-蜻蜓手游网...
  3. SecureCRT 6.7.1 注冊机 和谐 破解 补丁 方法
  4. python开发视频播放器_Python应用03 使用PyQT制作视频播放器实例
  5. CakePHP 2.x十分钟博客教程
  6. 如何将你的 MySQL 查询速度提升 300 倍
  7. java动作触发声音_关于鼠标动作的声音如何添加
  8. eigrp 非等值负载均衡
  9. 高级商务办公软件应用【5】
  10. 1 集群Linux环境搭建
  11. 程序员叫啥名字_程序员是什么职业什么职务?
  12. 该网站安全证书有问题 宝塔面板配置ssl中遇到的“坑”
  13. Elasticsearch常用查询命令
  14. 搭建owncloud私有云
  15. Restful API设计指南
  16. MySql无法连接本地地址localhost
  17. planet_Earth靶场渗透记录
  18. 秒杀抢单系统软件架构优化思路
  19. CVPR 2018视频行为识别挑战赛概览
  20. php租用空间,php虚拟主机空间租用(php虚拟主机免费)

热门文章

  1. calloc()函数
  2. Typo: In word 问题解决。
  3. 2021年高压电工考试技巧及高压电工模拟考试
  4. 宏碁笔记本安装固态硬盘
  5. rap技术原理_人们对Rap(说唱)理解的误区,你知道多少?
  6. php计算跨月请假天数,计算请假天数JavaScript方法
  7. 2、进入缓冲区(缓存)的世界,破解一切与输入输出有关的疑难杂症(转载自C语言中文网,仅作学习笔记)
  8. Windows下VS2015编译caffe(CPU ONLY)
  9. ONLYOFFICE文档转换开发技术
  10. 《MATLAB语音信号分析与合成(第二版)》:第5章 带噪语音和预处理