问题标签 [delayed-job]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2069 浏览

ruby-on-rails - 杀死所有 delay_job 工人

我使用delayed_job 作为守护进程https://github.com/tobi/delayed_job/wiki/Running-Delayed::Worker-as-a-daemon

我不知道为什么,但有时我会看到多个工作人员(不同的 pid)完成一项以上的工作,并且运行stop不会停止任何事情。有没有办法杀死这个过程/所有工人的所有守护进程?或者杀死一个特定的 pid(我在一个共享主机上,所以我无法使用 kill/killall)。

0 投票
1 回答
692 浏览

ruby-on-rails - 从应用服务器分叉延迟作业?

这是我想要延迟作业运行时的简单理想情况:

  • 当第一个应用程序服务器(无论是通过 mongrel 还是乘客)启动时,它会启动我延迟的工作人员。
  • 当最后一个运行的应用程序服务器终止时,它会杀死所有延迟的作业工作者。

第一部分(开始)是可行的,尽管我不确定“正确”或“最佳”的方法是什么。只需对延迟作业启动进行有条件的(在尚未运行的进程上)系统调用?

第二部分(终止)——好吧,我不确定它是否可行。绝对不知道如何实现这种效果。

有什么想法或想法吗?

是否有另一种您认为最好的方式来开始/结束延迟工作的工作人员?

附带问题:上面的主要问题是针对生产环境的——一个更困难的情况,因为有多个应用服务器同时运行。在开发环境中(保证只有一个应用程序服务器,而不是它们的集群)中是否可以通过派生一个子进程来运行延迟的作业工作者,这些工作者总是在父进程终止时终止?我该怎么做呢?

0 投票
2 回答
841 浏览

ruby-on-rails - delay_jobs 可以创建delayed_jobs 吗?

我试图弄清楚我是否能够使用delayed_job. 我需要能够在delayed_job perform方法中将作业添加到队列中。这可能吗?

0 投票
1 回答
1203 浏览

ruby-on-rails - Delayed::Job 使用监视器和内存错误时

所以我已经延迟::Job 在生产中运行了一段时间。

每当我改变工作时,我都会(在生产环境中提醒你)

  1. 使用我使用的 [脚本] ( https://github.com/tobi/delayed_job/wiki/Running-Delayed::Worker-as-a-daemon )重新启动延迟作业
  2. 使用清除作业rake jobs:clear

另外,我已经运行了monit,我已经停止了monit,重新启动了脚本,然后按顺序启动了monit……仍然没有骰子。

无论如何,我们都这样做是为了让旧工作从内存中消失,我清除工作队列只是因为这就是我所做的。可能不需要该步骤,在我的应用程序中它不会受到伤害。

但是,由于某种原因,最近使用这些步骤并没有重置我的新工作代码。当我查看我的 job_runner.log 文件时,我在重新启动脚本时收到此错误

所以我不确定发生了什么。堆栈级别太深的错误,是否来自我的代码?我所有的集成测试都通过了,就像他们以前一样。

我的切片有内存问题吗?即使free告诉我我这样做时平均有300MB?

谁能帮帮兄弟?

0 投票
1 回答
2578 浏览

ruby-on-rails - 延迟的 Job Rake 任务失败

我正试图让延迟的工作成为一项繁重的任务,但对于我的生活,我无法弄清楚我做错了什么。鉴于以下设置:

每当我运行 rake jobs:clear 时,都会出现以下错误:

即使我在运行测试用例或直接运行测试用例时没有收到此错误。有任何想法吗?

0 投票
2 回答
1625 浏览

sql-server-agent - 如何实现等待另一个作业完成的 SQL Server 作业?

我正在寻找一种在 SQL Server 代理上实现优先步骤的方法,该步骤将验证特定作业是否正在运行。如果是这样,该步骤将进入“等待”状态,直到第一个作业成功完成。

为了澄清,这将是场景:

工作名称:“我的工作”

要检查的作业:'验证表'

“我的工作”的步骤:

第 1 步:检查“验证表”是否正在运行 第 2 步:执行其他操作

在第 1 步,需要像这样使用一些 T-SQL: exec msdb.dbo.sp_help_job @job_name='Validade tables',@job_aspect ='JOB'

如果 current_execution_status 等于 1,则将等待(不会运行第 2 步)

我不是 SQL Server 代理方面的专家,所以我需要一些帮助。

提前致谢。

0 投票
4 回答
6439 浏览

jquery - 如何在使用 ajax 在嵌套 Rails 模型中处理后台任务时显示动画微调器

我的具体示例非常复杂,因此我将使用 Railscasts 的 Ryan 展示的示例来讨论这个问题:

http://railscasts.com/episodes/197-nested-model-form-part-2

背景

我有一个表格,比如说“调查”,其中包含任意数量的“问题”。

塞纳里奥

给我在“编辑调查”页面上。

我想在每个调用remote_function的“问题”字段中添加一个按钮,然后排队等待延迟作业以对“问题”执行一些处理。

为了向用户提供反馈,我想禁用该按钮,并显示一个动画微调器,直到 delay_job 处理了“问题”。

提示 - 我可以向“问题”模型添加方法来指示延迟作业的状态。

那么,考虑到最佳实践,实现这一目标的最佳方法是什么?

0 投票
3 回答
5512 浏览

ruby-on-rails - 日志在作业延迟的生产中不起作用

我遇到了一些奇怪的问题,我的delayed_jobs 在生产中失败了。最后我把它缩小到记录器。如果我注释掉我的日志函数调用,一切正常。但是,如果我尝试登录,我会在 delay_job 处理程序中得到这个:

我的记录器看起来像这样:

如果我注释掉“@@error_log_file.sync = true”行,它也可以工作。

这是一个延迟的工作问题,还是与我的日志目录是一个符号链接有关(由标准 capistrano 部署设置)?

我的error.log文件也没有写入任何内容,delayed_job.log也没有写入任何内容。彻底懵了……

0 投票
2 回答
2346 浏览

ruby-on-rails - Delayed_job 多次运行同一个作业?

我一直在使用delayed_job 一段时间没有问题;主要用于排队 ActionMailer 调用(Notifier.send_later ...)。最近,它会从同一个工作中随机发送多封电子邮件。我将排队一封电子邮件,然后我会同时收到五次、一次或两次。我已经重新启动了delayed_job,它似乎运行了一段时间。有人经历过吗?

这是我的日志;我以前从未见过这些错误...

0 投票
2 回答
423 浏览

ruby-on-rails - 当 DB 空闲时在 Ruby on Rails Heroku 上运行作业

我有一个使用 Heroku 的 ruby​​ on rails 应用程序。我需要在我们的数据库上运行诸如导入/导出任务之类的东西,这些任务会锁定整个系统,因为它们对数据库来说太重了。有没有办法告诉系统只在那一秒不使用数据库时才运行这些任务?