Do you sometimes feel that managing your server infrastructure is a moving target? Want to avoid costly adjustments? Hear solutions for monitoring and controlling your server infrastructure from almost anywhere.
Plack::Handler(3pm) User Contributed Perl Documentation Plack::Handler(3pm)NAME
Plack::Handler - Connects PSGI applications and Web servers
SYNOPSIS
package Plack::Handler::AwesomeWebServer;
sub new {
my($class, %opt) = @_;
...
return $self;
}
sub run {
my($self, $app) = @_;
# launch the AwesomeWebServer and run $app in the loop
}
# then from command line
plackup -s AwesomeWebServer -a app.psgi
DESCRIPTION
Plack::Handler defines an adapter (connector) interface to adapt plackup and Plack::Runner to various PSGI web servers, such as Apache2 for
mod_perl and Standalone for HTTP::Server::PSGI.
It is an empty class, and as long as they implement the methods defined as an Server adapter interface, they do not need to inherit
Plack::Handler.
If you write a new handler for existing web servers, I recommend you to include the full name of the server module after Plack::Handler
prefix, like Plack::Handler::Net::Server::Coro if you write a handler for Net::Server::Coro. That way you'll be using plackup command line
option like:
plackup -s Net::Server::Coro
that makes it easy to figure out which web server you're going to use.
METHODS
new
$server = FooBarServer->new(%args);
Creates a new adapter object. %args can take arbitrary parameters to configure server environments but common parameters are:
port Port number the server listens to.
host Address the server listens to. Set to undef to listen any interface.
run
$server->run($app);
Starts the server process and when a request comes in, run the PSGI application passed in $app in the loop.
register_service
$server->register_service($app);
Optional interface if your server should run in parallel with other event loop, particularly AnyEvent. This is the same as "run" but
doesn't run the main loop.
SEE ALSO
rackup
perl v5.14.2 2011-02-27 Plack::Handler(3pm)