NAME
Mojo::Server::Daemon::Prefork - Preforking HTTP 1.1 And WebSocket Server
SYNOPSIS
use Mojo::Daemon::Prefork;my $daemon = Mojo::Daemon::Prefork->new;$daemon->port(8080);$daemon->run;
DESCRIPTION
Mojo::Server::Daemon::Prefork is a full featured preforking HTTP 1.1 and WebSocket server using a dynamic worker pool with "IPv6", "TLS", "epoll", "kqueue", hot deployment, UNIX domain socket sharing and optional async io support.
Optional modules IO::KQueue, IO::Epoll, IO::Socket::INET6 and IO::Socket::SSL are supported transparently and used if installed.
ATTRIBUTES
Mojo::Server::Daemon::Prefork inherits all attributes from Mojo::Server::Daemon and implements the following new ones.
"cleanup_interval"
my $cleanup_interval = $daemon->cleanup_interval;$daemon = $daemon->cleanup_interval(15);
Cleanup interval for workers in seconds, defaults to 15.
"idle_timeout"
my $idle_timeout = $daemon->idle_timeout;$daemon = $daemon->idle_timeout(30);
Timeout for workers to be idle in seconds, defaults to 30.
"max_clients"
my $max_clients = $daemon->max_clients;$daemon = $daemon->max_clients(1);
Maximum number of parallel client connections handled by worker, defaults to 1.
"max_requests"
my $max_requests = $daemon->max_requests;$daemon = $daemon->max_requests(1);
Maximum number of requests a worker process is allowed to handle, defaults to 1000.
"max_servers"
my $max_servers = $daemon->max_servers;$daemon = $daemon->max_servers(100);
Maximum number of active workers, defaults to 100.
"max_spare_servers"
my $max_spare_servers = $daemon->max_spare_servers;$daemon = $daemon->max_spare_servers(10);
Maximum number of idle workers, default to 10.
"min_spare_servers"
my $min_spare_servers = $daemon->min_spare_servers;$daemon = $daemon->min_spare_servers(5);
Minimal number of idle workers, defaults to 5.
"start_servers"
my $start_servers = $daemon->start_servers;$daemon = $daemon->start_servers(5);
Number of workers to spawn at server startup, defaults to 5.
METHODS
Mojo::Server::Daemon::Prefork inherits all methods from Mojo::Server::Daemon and implements the following new ones.
"accept_lock"
my $lock = $daemon->accept_lock($blocking);
Try to get the accept lock.
"child"
$daemon->child;
Worker process.
"child_status"
$daemon->child_status('idle');
Change status for worker process.
"daemonize"
$daemon->daemonize;
Daemonize manager process.
"parent"
$daemon->parent;
Manager process.
"run"
$daemon->run;
Start server.
SEE ALSO
Mojolicious, Mojolicious::Guides, <http://mojolicious.org>.