Class

RailsFCGIHandler

Inheritance
< Object

Constants

Name   Description
GLOBAL_SIGNALS = SIGNALS.keys - %w(USR1)
SIGNALS = { 'HUP' => :reload, 'INT' => :exit_now, 'TERM' => :exit_now, 'USR1' => :exit, 'USR2' => :restart

Attributes

Name Visibility R/W Description
gc_request_period public RW
log_file_path public RW
when_ready public R

Methods

Class

Visibility Signature
public new (log_file_path = nil, gc_request_period = nil) {|self if block_given?| ...}
public process! (*args, &block)

Instance

Visibility Signature
public process! (provider = FCGI)
protected close_connection (request)
protected dispatcher_error (e, msg = "")
protected dispatcher_log (level, msg)
protected exit_handler (signal)
protected exit_now_handler (signal)
protected gc_countdown ()
protected install_signal_handler (signal, handler = nil)
protected install_signal_handlers ()
protected logger ()
protected mark_features! ()
protected process_each_request (provider)
protected process_request (request)
protected reload! ()
protected reload_handler (signal)
protected restart! ()
protected restart_handler (signal)
protected restore! ()
protected run_gc! ()
protected with_signal_handler (signal) {|| ...}

Class Method Detail

new(log_file_path = nil, gc_request_period = nil) {|self if block_given?| ...}

Initialize the FastCGI instance with the path to a crash log detailing unhandled exceptions (default RAILS_ROOT/log/fastcgi.crash.log) and the number of requests to process between garbage collection runs (default nil for normal GC behavior.) Optionally, pass a block which takes this instance as an argument for further configuration.

process!(*args, &block)

Initialize and run the FastCGI instance, passing arguments through to new.

Instance Method Detail

process!(provider = FCGI)

close_connection(request)

dispatcher_error(e, msg = "")

dispatcher_log(level, msg)

exit_handler(signal)

exit_now_handler(signal)

gc_countdown()

install_signal_handler(signal, handler = nil)

install_signal_handlers()

logger()

mark_features!()

Make a note of $" so we can safely reload this instance.

process_each_request(provider)

process_request(request)

reload!()

reload_handler(signal)

restart!()

restart_handler(signal)

restore!()

run_gc!()

with_signal_handler(signal) {|| ...}