我正在接收运行独角兽和sidekiq的Heroku应用程序的R12退出超时错误.这些错误每天发生1-2次,每当我部署时.我知道我需要转换来自Heroku的关机信号以便独角兽正确响应,但我认为我在下面的unicorn配置中已经这样做了:
worker_processes 3
timeout 30
preload_app true
before_fork do |server, worker|
Signal.trap 'TERM' do
puts "Unicorn master intercepting TERM and sending myself QUIT instead. My PID is #{Process.pid}"
Process.kill 'QUIT', Process.pid
end
if defined?(ActiveRecord::Base)
ActiveRecord::Base.connection.disconnect!
Rails.logger.info('Disconnected from ActiveRecord')
end
end
after_fork do |server, worker|
Signal.trap 'TERM' do
puts "Unicorn worker intercepting TERM and doing nothing. Wait for master to sent QUIT. My PID is #{Process.pid}"
end
if defined?(ActiveRecord::Base)
ActiveRecord::Base.establish_connection
Rails.logger.info('Connected to ActiveRecord')
end
Sidekiq.configure_client do |config|
config.redis = { :size …Run Code Online (Sandbox Code Playgroud) 我有一个托管在Heroku上的rails应用程序,我想要整合一些实时数据分析.理想情况下,我想找出一种运行广义增强回归模型的方法,我知道这两种模型都可用于R(http://cran.r-project.org/web/packages/gbm/index.html)和Stata(http://www.stata-journal.com/article.html?article=st0087).我想保存生成的gbm树,然后在我的应用程序中,使用它来根据用户输入预测新结果.
如果那是不可能的,我会愿意使用其他数据挖掘算法.对我来说最重要的是能够将它集成到我的Heroku应用程序中,以便它可以在没有本地机器的情况下运行.
我研究过的选项:
1)Heroku支持建议将R库存放到红宝石中.我对红宝石和铁轨比较陌生,这对我来说是可行的.我四处寻找有关在宝石中销售图书馆的说明,但是找不到多少.
2)这里的另一个帖子(http://stackoverflow.com/questions/6495232/statistic-engine-that-work-with-heroku)提到了CloudNumbers,但似乎无法从Rails应用程序调用该服务.
3)在他们的一个案例研究中,Heroku提到了FlightCaster,它使用Clojure,Hadoop和EC2进行机器学习(http://www.infoq.com/articles/flightcaster-clojure-rails).我看到Heroku支持Clojure,但有没有办法将它(或更具体的Incanter)集成到我的Rails应用程序中?
如果您有任何想法,请告诉我.