ruby-on-rails - 由于 Rails env 启动,后台工作任务需要花费大量时间

标签 ruby-on-rails ruby ruby-on-rails-3 foreman

我每分钟都会运行 rake 任务,这些任务目前每分钟都会实例化 Rails 环境,作为 Foreman 和 cron gem 的工作人员。我担心的是,仅启动 Rails 就会消耗其中一个处理器的 90% 的电量,每次大约 20 秒。处理此类需要 Rails 环境进行数据库访问和一些库,但又不必如此频繁地启动整个系统的事情的最有效方法是什么?

除此之外,还有一些其他工作人员需要启动,因此情况变得更加复杂。

最佳答案

如果我是你,我会查看一些异步消息传递框架:Resque vs Sidekiq? 。使用这些 Rails 只需要加载一次,并且进程可以在必要时重用该 Rails。我认为这是通过 fork 完成的。不过不太确定。

关于ruby-on-rails - 由于 Rails env 启动,后台工作任务需要花费大量时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16017968/

相关文章:

ruby - 使用紫菜和 Prawn

sql-server - 为什么我会遇到 SQL Server ActiveRecord 适配器的段错误?

ruby-on-rails - Rails 3.2 中空表列的最佳实践

ruby-on-rails-3 - 如何控制来自 Controller 中表单的动态行

ruby-on-rails - 如何在 ruby​​ on Rails 中发送多个 ".Zip"文件

ruby-on-rails - 将 sitemap_generator 与不同的区域设置 url 一起使用

jQuery 不更新 Rails 中的嵌套表单

Rails 中的 mysql gem 安装错误

正则表达式匹配 1+ 字符,但不是 500 字符

ruby-on-rails - 有什么好方法可以在 WordPress 主题中包含 Rails Assets 样式表吗?