2015-04-01 74 views
1

嗨,我很难找到这个。如何使用远程数据库在生产环境中运行resque-scheduler?

我正在使用Capistrano进行部署,并且我有很多重复计划任务使用了resque-scheduler来运行。

在我的本地环境我会跑:

QUEUE=* rake environment resque:work 

开始resque并开始resque调度:

rake environment resque:scheduler 

这是我的resque.rake文件:

require 'resque/tasks' 
require 'resque/scheduler/tasks' 

namespace :resque do 
    task :setup do 
    require 'resque' 
    Resque.redis = ENV['REDIS_SERVER'] 
    end 
    task :setup_schedule => :setup do 
    require 'resque-scheduler' 
    Resque.schedule = YAML.load_file("#{Rails.root}/config/resque_schedule.yml") 
    end 

    task :scheduler_setup => :setup_schedule 
end 

所以我想弄清楚的是我如何在生产中得到这个工作?我假设我首先需要在我的服务器上安装redis,即使我有远程Redis DB?那么我需要做一个capistrano任务,或者是让它运行的东西?

回答

0
  1. 要使用连接到远程redis的替换Resque.redis

    URI = URI.parse( 'redis的:// redistogo_url:9918 /') Resque.redis = Redis.new(:主机=> uri.host,:端口=> uri.port,:密码=> uri.password)

  2. 你并不需要安装`Redis的服务器只是正常的宝石

相关问题