mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-24 20:36:49 +00:00
20 lines
776 B
Ruby
20 lines
776 B
Ruby
# frozen_string_literal: true
|
|
|
|
# This file is used by Rack-based servers to start the application.
|
|
|
|
if ENV.fetch('KILL_UNICORNS', false) && ['production', 'staging'].include?(ENV['RAILS_ENV'])
|
|
# Gracefully restart individual unicorn workers if they have:
|
|
# - performed between 25000 and 30000 requests
|
|
# - grown in memory usage to between 700 and 850 MB
|
|
require 'unicorn/worker_killer'
|
|
use Unicorn::WorkerKiller::MaxRequests,
|
|
ENV.fetch('UWK_REQS_MIN', 25_000).to_i,
|
|
ENV.fetch('UWK_REQS_MAX', 30_000).to_i
|
|
use Unicorn::WorkerKiller::Oom,
|
|
( ENV.fetch('UWK_MEM_MIN', 700).to_i * (1024**2) ),
|
|
( ENV.fetch('UWK_MEM_MAX', 850).to_i * (1024**2) )
|
|
end
|
|
|
|
require ::File.expand_path('../config/environment', __FILE__)
|
|
run Openfoodnetwork::Application
|