草庐IT

作业车

全部标签

php - 如何检查 Beanstalkd 队列中的作业是否已在 Laravel 中完成

我需要检查添加到队列(Beanstalkd)的作业是否已在Laravel(Laravel5)中完成,如果完成,我需要返回更新的记录(添加到队列更新记录的任务在数据库中)。我已经添加到我的composer.json:"pda/pheanstalk":"3.*"我以这种方式将作业添加到队列中:$jobId=Queue::push('App\Class',$object->toArray(),$this->getQueueName());我使用以下函数检查作业是否完成:publicfunctionfind($queueName,$jobId,$recordId){$phean=Queue::

php - Laravel 不使用数据库执行作业队列

我正在尝试执行作业队列以在后台进程中执行邮件和短信功能。它正在与QUEUE_DRIVER=sync在.env文件中但是当我将它与数据库一起使用时QUEUE_DRIVER=database即使在使用cli命令后它也无法正常工作:phpartisanqueue:listen请告诉我这种功能有什么问题laravel.log: 最佳答案 这里是我将如何调试它:如果您正在使用supervisor,请将其停止。cd进入你的目录并输入phpartisanqueue:listen如果你看到任何错误,那么你运行的作业类可能有一些问题laravel5.

php - node.js 中的作业队列

我正在node.js中寻找一个可以由php调用的作业队列管理器。这是用于需要发送电子邮件、创建pdf文件等的Web应用程序,我想执行异步的php进程。过程示例:用户请求一个php页面Php调用作业队列管理器并添加任务任务在node.js中与php异步执行,最好是在更安静的时候执行任务是执行一个php脚本为什么是这个“复杂”的系统?我们用php(ZendFramework)编写所有网络应用程序我们想开始学习node.js我们需要一个异步过程(快速响应!)“真正的”任务也应该是一个php脚本,利用已经编写好的php类,轻松访问数据库连接并尽可能保持DRY该系统的用例:用户自行注册,系统发送

PHP cron 作业由于最大执行时间 fatal error 而提前终止

我有一个PHPcron作业在运行29分钟后失败。日志中的错误(/var/log/php_errors.log)是:[01-Mar-201200:32:57UTC]PHPFatalerror:Maximumexecutiontimeof60secondsexceededin/path/file.phponline2079触发cron的crontab条目是:0000***/usr/bin/php/path/file.php根据我的研究,我认为这与max_execution_time配置设置无关,因为:我确实知道它运行了29:18分钟(即比错误消息多了60秒)。来自thePHPdocs-从命

php - 构建 cron 作业调度程序

关闭。这个问题需要更多focused.它目前不接受答案。想改善这个问题吗?更新问题,使其仅关注一个问题editingthispost.3年前关闭。Improvethisquestion目前我正在尝试构建一个良好的调度程序系统作为在我的系统上设置和编辑cron作业的界面。我的系统是在Linux服务器上使用Zend框架1.11.11构建的。我有两个主要问题需要您的建议:问题一:应用本身的设置我有两种运行cron作业的方法:第一种方法是创建一个文件夹scripts并在其中创建一个通用Bootstrap文件,我将只加载我需要的资源。然后,对于每个任务,我将创建一个单独的脚本,并在每个脚本中包含

php - 我们可以通过 PHP 脚本配置 cron 作业的时间间隔吗?

我们是否可以通过PHP脚本配置cron作业的时间间隔,这样时间间隔不应手动设置,而是通过PHP脚本设置,无论时间间隔来自数据库还是固定(但来自PHP代码)。提前致谢 最佳答案 我认为让您的应用程序控制事件的频率而不是cronjob要好得多。让cronjob每分钟运行您的应用程序的某个Action。例如,该操作然后检查名为cronjobs的数据库表并运行由频率数字或时间戳标记为运行的作业。如果你这样做,你可以从任何地方以编程方式添加新的工作,例如通过一个cronjob接口(interface)。该解决方案更易于维护、测试和记录。

php - fuser 使用大量 CPU 处理 php5 cron 作业

我们发现服务器的CPU每隔30分钟就会出现峰值。这可能是由php5作业清理session文件引起的。这是从我们服务器上的/etc/cron.d/php5中获取的:#/etc/cron.d/php5:crontabfragmentforphp5#ThispurgessessionfilesolderthanX,whereXisdefinedinseconds#asthelargestvalueofsession.gc_maxlifetimefromallyourphp.ini#files,or24minutesifnotdefined.See/usr/lib/php5/maxlifeti

php - ElasticSearch 查询卡在 laravel 作业队列中

我目前正在使用laravel-elasticsearch我的ES查询的提供者。我在我的laravel队列(使用beanstalkd)处理的作业中使用它。我遇到的问题是,在长时间运行的作业中,最终我无法再将数据插入到elasticsearch中。工作只是挂起(没有抛出异常)我已经将它缩小到我进行ES调用的代码。我的连接是否有可能变得陈旧而不重新连接?我的另一个想法是它与使用Facade和它是一个单例有关。这是我正在做的,这不是我的确切代码。但是当它没有在长时间运行的作业中运行时,代码工作得很好。我只是想提供一些上下文。它插入得很好,在长时间运行的过程之后运行之前,代码运行没有问题。更新:

php - 如何让 Drupal 的 $base_url 用于 cron 作业?

当我运行cron作业时,如何让$base_url显示我的Drupal站点的正确url?我是否必须手动设置全局$base_url才能实现?我必须以注册用户身份运行cron作业吗?当我手动运行mysite.com/cron.php时,一切似乎都正常:$base_url设置为正确的url。但是,当我通过cron或drush运行类似的命令时,$base_url被设置为通用的“http://default”。有趣的是,当我以注册用户身份从Drupal内部手动运行cron(例如使用devel)时,$base_url会指向正确的url。有什么建议吗?提前致谢狮子座 最佳答

java - 跨多个服务器执行单个作业

我有多个服务器运行@Schedule的设置,它运行一个spring批处理作业,向用户发送电子邮件。我想确保只有这个作业的一个实例在多个服务器上运行。基于this题我已经实现了一些逻辑,看看是否可以仅使用springbatch来解决这个问题。为了运行作业,我使用以下方法创建了一个辅助类JobRunner:publicvoidrun(Jobjob){try{jobLauncher.run(job,newJobParameters());}catch(JobExecutionAlreadyRunningExceptione){//Checkifjobisinactiveandstopitif