Mojo::Server::Daemon man page on Fedora

Man page or keyword search:  
man Server   31170 pages
apropos Keyword Search (all sections)
Output format
Fedora logo
[printable version]

Mojo::Server::Daemon(3User Contributed Perl DocumentatiMojo::Server::Daemon(3)

NAME
       Mojo::Server::Daemon - Non-Blocking I/O HTTP 1.1 And WebSocket Server

SYNOPSIS
	 use Mojo::Server::Daemon;

	 my $daemon = Mojo::Server::Daemon->new(listen => ['http://*:8080']);
	 $daemon->on_request(sub {
	   my ($self, $tx) = @_;

	   # Request
	   my $method = $tx->req->method;
	   my $path   = $tx->req->url->path;

	   # Response
	   $tx->res->code(200);
	   $tx->res->headers->content_type('text/plain');
	   $tx->res->body("$method request for $path!");

	   # Resume transaction
	   $tx->resume;
	 });
	 $daemon->run;

DESCRIPTION
       Mojo::Server::Daemon is a full featured non-blocking I/O HTTP 1.1 and
       WebSocket server with "IPv6", "TLS", "Bonjour" and "libev" support.

       Optional modules EV, IO::Socket::IP, IO::Socket::SSL and
       Net::Rendezvous::Publish are supported transparently and used if
       installed.

       See Mojolicious::Guides::Cookbook for deployment recipes.

ATTRIBUTES
       Mojo::Server::Daemon inherits all attributes from Mojo::Server and
       implements the following new ones.

   "backlog"
	 my $backlog = $daemon->backlog;
	 $daemon     = $daemon->backlog(128);

       Listen backlog size, defaults to "SOMAXCONN".

   "group"
	 my $group = $daemon->group;
	 $daemon   = $daemon->group('users');

       Group for server process.

   "ioloop"
	 my $loop = $daemon->ioloop;
	 $daemon  = $daemon->ioloop(Mojo::IOLoop->new);

       Event loop for server I/O, defaults to the global Mojo::IOLoop
       singleton.

   "keep_alive_timeout"
	 my $keep_alive_timeout = $daemon->keep_alive_timeout;
	 $daemon		= $daemon->keep_alive_timeout(5);

       Maximum amount of time in seconds a connection can be inactive before
       being dropped, defaults to 15.

   "listen"
	 my $listen = $daemon->listen;
	 $daemon    = $daemon->listen(['https://localhost:3000']);

       List of one or more locations to listen on, defaults to
       "http://*:3000".

	 # Listen on two ports with HTTP and HTTPS at the same time
	 $daemon->listen(['http://*:3000', 'https://*:4000']);

	 # Use a custom certificate and key
	 $daemon->listen(['https://*:3000:/x/server.crt:/y/server.key']);

	 # Or even a custom certificate authority
	 $daemon->listen(['https://*:3000:/x/server.crt:/y/server.key:/z/ca.crt']);

   "max_clients"
	 my $max_clients = $daemon->max_clients;
	 $daemon	 = $daemon->max_clients(1000);

       Maximum number of parallel client connections, defaults to 1000.

   "max_requests"
	 my $max_requests = $daemon->max_requests;
	 $daemon	  = $daemon->max_requests(100);

       Maximum number of keep alive requests per connection, defaults to 25.

   "silent"
	 my $silent = $daemon->silent;
	 $daemon    = $daemon->silent(1);

       Disable console messages.

   "user"
	 my $user = $daemon->user;
	 $daemon  = $daemon->user('web');

       User for the server process.

   "websocket_timeout"
	 my $websocket_timeout = $server->websocket_timeout;
	 $server	       = $server->websocket_timeout(300);

       Maximum amount of time in seconds a WebSocket connection can be
       inactive before being dropped, defaults to 300.

METHODS
       Mojo::Server::Daemon inherits all methods from Mojo::Server and
       implements the following new ones.

   "prepare_ioloop"
	 $daemon->prepare_ioloop;

       Prepare event loop.

   "run"
	 $daemon->run;

       Start server.

   "setuidgid"
	 $daemon->setuidgid;

       Set user and group for process.

DEBUGGING
       You can set the "MOJO_DAEMON_DEBUG" environment variable to get some
       advanced diagnostics information printed to "STDERR".

	 MOJO_DAEMON_DEBUG=1

SEE ALSO
       Mojolicious, Mojolicious::Guides, <http://mojolicio.us>.

perl v5.14.1			  2011-09-01	       Mojo::Server::Daemon(3)
[top]

List of man pages available for Fedora

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net