Merge pull request #2663 from torrancew/with_unicorn
Needz moar unicorns please [ci skip]
This commit is contained in:
commit
2a2efd097f
4 changed files with 55 additions and 2 deletions
3
Gemfile
3
Gemfile
|
|
@ -6,7 +6,8 @@ gem 'bundler', '>= 1.0.0'
|
|||
gem 'foreman', '0.27.0'
|
||||
gem 'whenever'
|
||||
|
||||
gem 'thin', '~> 1.3.1', :require => false
|
||||
gem 'thin', '~> 1.3.1', :require => false
|
||||
gem 'unicorn', '~> 4.1.1', :require => false
|
||||
|
||||
# authentication
|
||||
|
||||
|
|
|
|||
|
|
@ -218,6 +218,7 @@ GEM
|
|||
multi_json
|
||||
jwt (0.1.4)
|
||||
json (>= 1.2.4)
|
||||
kgio (2.7.0)
|
||||
launchy (2.0.3)
|
||||
linecache (0.46)
|
||||
rbx-require-relative (> 0.0.4)
|
||||
|
|
@ -307,6 +308,7 @@ GEM
|
|||
rake (>= 0.8.7)
|
||||
rdoc (~> 3.4)
|
||||
thor (~> 0.14.4)
|
||||
raindrops (0.8.0)
|
||||
rake (0.9.2.2)
|
||||
rbx-require-relative (0.0.5)
|
||||
rdoc (3.12)
|
||||
|
|
@ -391,6 +393,10 @@ GEM
|
|||
typhoeus (0.3.3)
|
||||
mime-types
|
||||
tzinfo (0.3.31)
|
||||
unicorn (4.1.1)
|
||||
kgio (~> 2.4)
|
||||
rack
|
||||
raindrops (~> 0.6)
|
||||
vegas (0.1.8)
|
||||
rack (>= 1.0.0)
|
||||
warden (1.0.6)
|
||||
|
|
@ -490,6 +496,7 @@ DEPENDENCIES
|
|||
timecop
|
||||
twitter (= 2.0.2)
|
||||
typhoeus
|
||||
unicorn (~> 4.1.1)
|
||||
vanna!
|
||||
webmock
|
||||
whenever
|
||||
|
|
|
|||
2
Procfile
2
Procfile
|
|
@ -1,3 +1,3 @@
|
|||
web: bundle exec rails s thin -p $PORT
|
||||
web: bundle exec unicorn -c config/unicorn.rb -p $PORT
|
||||
redis: redis-server
|
||||
worker: QUEUE=* bundle exec rake resque:work
|
||||
|
|
|
|||
45
config/unicorn.rb
Normal file
45
config/unicorn.rb
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
rails_env = ENV['RAILS_ENV'] || 'development'
|
||||
|
||||
# Enable and set these to run the worker as a different user/group
|
||||
#user = 'diaspora'
|
||||
#group = 'diaspora'
|
||||
|
||||
worker_processes 3
|
||||
|
||||
## Load the app before spawning workers
|
||||
#preload_app true
|
||||
|
||||
# How long to wait before killing an unresponsive worker
|
||||
timeout 30
|
||||
|
||||
#pid '/var/run/diaspora/diaspora.pid'
|
||||
#listen '/var/run/diaspora/diaspora.sock', :backlog => 2048
|
||||
|
||||
# Ruby Enterprise Feature
|
||||
if GC.respond_to?(:copy_on_write_friendly=)
|
||||
GC.copy_on_write_friendly = true
|
||||
end
|
||||
|
||||
|
||||
before_fork do |server, worker|
|
||||
# If using preload_app, enable this line
|
||||
#ActiveRecord::Base.disconnect!
|
||||
|
||||
old_pid = '/var/run/diaspora/diaspora.pid.oldbin'
|
||||
if File.exists?(old_pid) && server.pid != old_pid
|
||||
begin
|
||||
Process.kill("QUIT", File.read(old_pid).to_i)
|
||||
rescue Errno::ENOENT, Errno::ESRCH
|
||||
# someone else did our job for us
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
after_fork do |server, worker|
|
||||
# If using preload_app, enable this line
|
||||
#ActiveRecord::Base.establish_connection
|
||||
|
||||
# Enable this line to have the workers run as different user/group
|
||||
#worker.user(user, group)
|
||||
end
|
||||
Loading…
Reference in a new issue