标签: backgroundrb

使用Kernel#fork进行后台处理,专业人员?利弊?

我想要一些关于是否使用fork {}来"跟踪"来自rails应用程序的进程是一个好主意的想法......

从我收集的叉子{my_method; Process#setsid}确实做了它应该做的事情.

1)使用不同的PID创建另一个进程

2)不会中断调用过程(例如,它继续等待fork完成)

3)执行孩子直到完成

..这很酷,但这是个好主意吗?叉子到底在做什么?它是否在内存中创建了我的整个rails mongrel/passenger实例的重复实例?如果是这样那将是非常糟糕的.或者,它是否以某种方式在不消耗大量内存的情况下进行.

我的最终目标是取消我的后台守护程序/队列系统,支持分叉这些进程(主要是发送电子邮件) - 但如果这不能节省内存,那么它肯定是向错误方向迈出的一步

ruby background ruby-on-rails backgroundrb delayed-job

7
推荐指数
2
解决办法
876
查看次数

适用于每分钟运行的邮件程序的最佳导轨解决方案

我有一个应用程序,每分钟检查一次数据库,以查找当时应该发送的任何电子邮件.我正在考虑将这个作为一个rake任务,每分钟由一个cron作业运行.会有更好的解决方案吗?

从我所读到的,这不是理想的,因为rake必须每分钟加载整个rails环境,这变得昂贵.

思考?

谢谢.

cron rake ruby-on-rails backgroundrb

6
推荐指数
1
解决办法
1229
查看次数

在Rails中运行时间很长

我有一个控制器,可以生成HTML,XML和CSV报告.用于这些报告的查询需要一分钟才能返回结果.

在后台运行这些任务然后将结果返回给用户的最佳方法是什么?我已经研究过Backgroundrb.对我的需求有什么更基础的吗?

ruby-on-rails backgroundrb

1
推荐指数
1
解决办法
361
查看次数