# capistrano 用に RAILS_ROOT を指定 working_directory '/home/bekkou/projects/gogengo' # ソケット listen File.expand_path( 'tmp/unicorn.sock', ENV [ 'RAILS_ROOT ']) # ログ stdout_path File.expand_path( 'log/unicorn.stdout.log', ENV [ 'RAILS_ROOT ']) stderr_path File.expand_path( 'log/unicorn.stderr.log', ENV [ 'RAILS_ROOT ']) # ダウンタイムなくす preload_app true before_fork do | server, worker| defined?( ActiveRecord::Base) and ActiveRecord::Base.connection.disconnect! old_pid = "#{ server.config[:pid] }.oldbin" unless old_pid == server.pid begin # SIGTTOU だと worker_processes が多いときおかしい気がする Process.kill :QUIT , File.read( old_pid) .to_i rescue Errno::ENOENT , Errno::ESRCH end end end after_fork do | server, worker| defined?( ActiveRecord::Base) and ActiveRecord::Base.establish_connection end
Full article: http://bekkou68.hatenablog.com/entry/2012/12/19/231920
@rails_rt_ja
»
20 Dec '12, 12am
@rubynews_j
»
19 Dec '12, 11pm
@mather314
»
20 Dec '12, 6am