2013-08-05 41 views
1

到目前为止,我正在使用瘦服务器。我打算切换到麒麟一些并发添加到Web DYNOS,我很担心,因为我通过this文章阅读,我发现这个代码:Heroku中的Resque与独角兽 - 我应该担心吗?

before_fork do |server, worker| 
    # ... 

    # If you are using Redis but not Resque, change this 
    if defined?(Resque) 
    Resque.redis.quit 
    Rails.logger.info('Disconnected from Redis') 
    end 
end 

after_fork do |server, worker| 
    # ... 

    # If you are using Redis but not Resque, change this 
    if defined?(Resque) 
    Resque.redis = ENV['REDIS_URI'] 
    Rails.logger.info('Connected to Redis') 
    end 
end 

我真的不明白为什么需要验证码如果我在使用Resque时添加或不添加。

你们认为如果我使用Resque工作人员时切换到Unicorn,应该考虑什么?

回答

0

独角兽是一个分叉,多进程的服务器。它将您的Rails环境加载到一个进程中,然后分派一些工作人员。使用fork使其复制整个父进程,包括任何打开的连接到数据库,内存缓存,Redis的等等

为了解决这个问题,你应该重新连接在after_fork块中的任何活动连接如图所示的例子。您只需重新连接您正在使用的连接/服务。

相关问题