NAME¶
Plack::Loader::Delayed - Delay the loading of .psgi until the first run
SYNOPSIS¶
plackup -s Starlet -L Delayed myapp.psgi
DESCRIPTION¶
This loader delays the compilation of specified PSGI application until the first
request time. This prevents bad things from happening with preforking web
servers like Starlet, when your application manipulates resources such as
sockets or database connections in the master startup process and then shared
by children.
You can combine this loader with "-M" command line option, like:
plackup -s Starlet -MCatalyst -L Delayed myapp.psgi
loads the module Catalyst in the master process for the better process
management with copy-on-write, however the application "myapp.psgi"
is loaded per children.
Starman since version 0.2000 loads this loader by default unless you specify the
command line option "--preload-app" for the starman executable.
DEVELOPERS¶
Web server developers can make use of "psgi_app_builder" attribute
callback set in Plack::Handler, to load the application earlier than the first
request time.
AUTHOR¶
Tatsuhiko Miyagawa
SEE ALSO¶
plackup