如何操作Laravel框架中队列和工作(队列、工作)

  介绍

这篇文章主要讲解了“如何操作Laravel框架中队列和工作(队列,乔布斯)”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习”如何操作Laravel框架中队列和工作(队列,乔布斯)”吧!

Laravel是什么

Laravel是一套简洁,优雅的PHP Web开发框架。它可以让你从面条一样杂乱的代码中解脱出来,它可以帮你构建一个完美的网络应用,而且每行代码都可以简洁,富于表达力。


在我们的网络应用中,经常会遇到这样的情况:

用户在进行了某项操作后,我们需要在后台完成一个耗时且耗费资源的任务,以对应用户的操作。

通常来说,网络应用中的操作都是同步的(同步),即用户的操作可以立即得到回馈。

但是在以上情况下,同步等待操作结果将是灾难性的。比如用户点击了申请密码重置邮件,倘若我们让用户一直停滞在等待页面,直至邮件发送成功,那么用户体验将非常地不好,因为有时候可能需要很长的时间才能将邮件发送完成。

从另一个角度来说,如果我们服务器处于高负荷的情况,当多个用户同时请求发送邮件等操作时,我们不希望同时地给服务器增加负荷,否则可能会导致服务器崩溃,造成无法预估的情况。

从以上的讨论可以看的出,我们需要一种机制,可以非同步地响应用户操作,并且不会给服务器增加过大的负荷。

那么这样一种机制就是队列和工作(即队列和工作)。

如果你系统地学习过计算机科学,那么队列的概念你应该不陌生。假设我们去银行办的事,我们拿了一个号,发现前面有8个人在等待,那么我们实际上就处在一个队列之中,队列中靠前的人会先被叫到号码,并且叫号的顺序即拿号的顺序。这样的队列就叫做队列,采用的是先到先处理的方式,不允许插队的情况存在。而我们要办的事情就叫工作。

在Laravel中,我们可以很方便地使用队列及工作来达到我们的目的。首先我们需要先来看一下,Laravel中有哪些队列。

打开配置/队列。php,我们可以看到几种常见的队列设置:

return  (,,,,,   ,,/*才能,,,,,,   |才能- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -,,,,,,   |才能,Default  Queue  Connection  Name ,,,,,   |才能- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -,,,,,,   |才能,,,,,,   |才能,Laravel& # 39; s  queue  API  supports  an  assortment  of  back-ends  via  a  single ,,,,,   |才能,API, giving 你convenient  access 用each  back-end  using 从而same ,,,,,   |才能,syntax  for  every 一只Here 你may  define  a  default 连接只,,,,,   |才能,,,,,,   */才能,,,,,,   ,,   & # 39;才能默认# 39;,=祝辞,env (& # 39; QUEUE_DRIVER& # 39;,, & # 39;同步# 39;),,,,,,,   ,,/*才能,,,,,,   |才能- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -,,,,,,   |才能,Queue  Connections ,,,,,   |才能- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -,,,,,,   |才能,,,,,,   |才能,Here 你may  configure 从而connection 方式、for  each  server  that ,,,,,   |才能,is  used  by  your 应用程序只A  default  configuration  has  been  added ,,,,,   |才能,for  each  back-end  shipped  with  Laravel只你断开连接;free 用add 多只,,,,,   |才能,,,,,,   |才能,司机:,“sync",,“database",,“beanstalkd",,“sqs",,“redis",,“null",,,,,,   |才能,,,,,,   */才能,,,,,,   ,,   & # 39;才能连接,,=祝辞,(,,,,,   ,,   ,,,& # 39;同步# 39;,=祝辞,(,,,,,   ,,,,,& # 39;司机# 39;,=祝辞,& # 39;同步# 39;,,,,,,,   ,,,,,,,,,,   ,,   ,,,& # 39;数据库# 39;,=祝辞,(,,,,,   ,,,,,& # 39;司机# 39;,=祝辞,& # 39;数据库# 39;,,,,,,,   ,,,,,& # 39;表# 39;,=祝辞,& # 39;工作,,,,,,,,   ,,,,,& # 39;队列# 39;,=祝辞,& # 39;默认情况下,,,,,,,,   ,,,,,& # 39;retry_after& # 39;,=祝辞,90,,,,,,,   ,,,,,,,,,,   ,,   ,,,& # 39;beanstalkd& # 39;,=祝辞,(,,,,,   ,,,,,& # 39;司机# 39;,=祝辞,& # 39;beanstalkd& # 39;,,,,,,,   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

如何操作Laravel框架中队列和工作(队列、工作)