queue:work --daemon和queue:listen有什么区别

洛根·贝利(Logan Bailey):

我正在设置离线作业服务器。我已经阅读了文档,但仍然看不到这两个命令之间的区别:artisan queue:work --daemonartisan queue:listen我应该使用哪个命令来运行守护程序?

劳伦斯:

编辑更新2017-04-07:

现在有三种运行队列的方法:

  • queue:work-这是新的“守护程序”过程(不再需要该标志)。该框架将“一次”启动-然后继续循环执行这些作业。这将无限期继续。queue:listen与框架持续使用时间相比,它使用更少的内存/ cpu 您还必须记住使用queue:restart强制队列更新在修补过程中推送的所有代码更改。

  • queue:work --once-这将启动框架,处理一项工作,然后关闭。在开发等过程中进行测试很有用。

  • queue:listen-这将在每个周期启动框架,处理一项工作,然后完全关闭,然后再次启动框架,并无限期循环。这意味着在处理每个作业后释放所有内存/进程。如果您遇到内存泄漏,请queue:work尝试一下。

--daemon标志不再对这些命令有影响。

原始答案:

列出了两个不同的问题。

artisan queue:workartisan queue:listen

  • queue:work只会弹出队列中的下一个作业,并仅处理该作业。这是一个“一次性”命令,一旦处理了一个队列命令,它将返回到命令提示符。
  • queue:listen将侦听队列,并继续处理收到的任何队列命令。这将无限期继续运行,直到您停止它为止。

在Laravel> = 4.2中,--daemon添加了一个命令。它的工作方式是直接保持队列直接运行,而不是在处理完每个队列后重新启动整个框架。这是一个可选命令,可大大减少队列的内存和cpu要求。

--daemon命令的重点是,在升级应用程序时,您需要使用专门重新启动队列queue:restart,否则您可能会遇到各种奇怪的错误,因为您的队列中仍会保留旧代码。

因此,回答您的问题“ 我应该使用哪个命令来运行守护程序? ”-答案几乎总是queue:work --daemon

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

/ * ... * /和/ ** ... * /有什么区别

+ =和= +有什么区别?

“ as?”,“ as!”和“ as”有什么区别?

dispatch_get_global_queue和dispatch_queue_create有什么区别?

崩溃:com.twitter.crashlytics.ios.work-queue

Laravel Queue,Beanstalkd与数据库,有什么区别?

使用Service Bus Queue的辅助角色和辅助角色有什么区别

DISPATCH_QUEUE_CONCURRENT和DISPATCH_QUEUE_SERIAL有什么区别

套接字编程-listen()和accept()有什么区别?

dispatch_queue_t和有什么不一样!和dispatch_queue_t?

<queue>的位和推送之间的区别

RxJS与Scheduler.queue和null有什么区别?

Git在目录(cd)和使用`work-tree`参数之间有什么区别?

使用Work Manager时,BackoffPolicy.EXPONENTIAL和BackoffPolicy.LINEAR有什么区别?

Condor使用cctools / work_queue向OSG提交

部署Laravel“ schedule:run”与“ queue:work”

Laravel中的Job,Queue和Worker有什么区别?

queue.wait()和等待缓冲区销毁之间有什么区别

ö和ö有什么区别?

Java的Queue无法指定大小限制,因此“添加”和“提供”之间有什么区别

python Queue.Queue和multiprocessing.Queue之间的区别

.queue()和jquery.queue()之间的区别

DISPATCH_QUEUE_CONCURRENT和全局并发调度队列之间有什么区别

$ _和!$有什么区别?

直接执行方法与在dispatch_async(dispatch_get_main_queue(),^ {})块中有什么区别

Job和Daemon有什么区别?

避免 php artisan queue:work : Queue Driver - Redis or Database (Laravel 5.4)

[=] 和 [this] 有什么区别?

FFMPEG - -rtbufsize 和 -thread_queue_size 之间有什么区别或关系?