This commit is contained in:
Ari Timonen 2020-03-26 02:34:05 +02:00
parent 782f72c1a3
commit a05b202fe2
2 changed files with 21 additions and 13 deletions

View file

@ -7,7 +7,7 @@ APP_SECRET=fe837ea72667ec3d8ecb94cfba1a1bba
DEPLOY_PATH=/var/www DEPLOY_PATH=/var/www
PUMA_WORKERS=5 PUMA_WORKERS=0
PUMA_MIN_THREADS=1 PUMA_MIN_THREADS=1
PUMA_MAX_THREADS=16 PUMA_MAX_THREADS=16
PUMA_PORT=4000 PUMA_PORT=4000

View file

@ -6,32 +6,40 @@ tag 'ENSL'
preload_app! preload_app!
daemonize false daemonize false
# FIXME rackup DefaultRackup
#stderr_path = "#{base_path}/log/puma.stderr.log"
#stdout_path = "#{base_path}/log/puma.stdout.log" rails_env = ENV['RAILS_ENV'] || 'development'
#directory base_path app_dir = ENV['DEPLOY_PATH'] || '/var/www'
environment rails_env
bind "unix://#{app_dir}/tmp/sockets/puma.sock"
port Integer(ENV['PUMA_PORT'] || 4000)
stdout_redirect "#{app_dir}/log/puma.stdout.log", \
"#{app_dir}/log/puma.stderr.log", true
#pidfile "#{base_path}/tmp/pids/puma.pid" #pidfile "#{base_path}/tmp/pids/puma.pid"
#state_path "#{base_path}/tmp/pids/puma.state" #state_path "#{base_path}/tmp/pids/puma.state"
#stdout_redirect stdout_path, stderr_path #stdout_redirect stdout_path, stderr_path
rackup DefaultRackup # FIXME: sometimes the app becomes super slow if workers are used, investigate
workers Integer(ENV['PUMA_WORKERS']) if (ENV.has_key?("PUMA_WORKERS") && ENV['PUMA_WORKERS'].to_i > 0)
environment ENV['RACK_ENV'] || 'production'
#bind "unix://#{base_path}/tmp/sockets/puma.sock"
port Integer(ENV['PUMA_PORT'] || 4000)
worker_timeout Integer(ENV['PUMA_TIMEOUT'] || 30) worker_timeout Integer(ENV['PUMA_TIMEOUT'] || 30)
workers Integer(ENV['PUMA_WORKERS'] || 4)
threads Integer(ENV['PUMA_MIN_THREADS'] || 1), Integer(ENV['PUMA_MAX_THREADS'] || 16) threads Integer(ENV['PUMA_MIN_THREADS'] || 1), Integer(ENV['PUMA_MAX_THREADS'] || 16)
plugin :tmp_restart
on_worker_boot do on_worker_boot do
require "active_record"
ActiveSupport.on_load(:active_record) do ActiveSupport.on_load(:active_record) do
ActiveRecord::Base.establish_connection ActiveRecord::Base.connection.disconnect! rescue ActiveRecord::ConnectionNotEstablished
ActiveRecord::Base.establish_connection(YAML.load_file("#{app_dir}/config/database.yml")[rails_env])
end end
end end
# EXPLAIN This has been added here but why? # EXPLAIN This has been added here but why?
on_restart do on_restart do
ENV["BUNDLE_GEMFILE"] = "#{current_path}/Gemfile" ENV["BUNDLE_GEMFILE"] = "#{app_dir}/Gemfile"
Dotenv.overload Dotenv.overload
ActiveRecord::Base.connection.disconnect! ActiveRecord::Base.connection.disconnect!
end end