Mojo::Server::Hypnotoad 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::HypnotoaUser Contributed Perl DocumentMojo::Server::Hypnotoad(3)

NAME
       Mojo::Server::Hypnotoad - ALL GLORY TO THE HYPNOTOAD!

SYNOPSIS
	 use Mojo::Server::Hypnotoad;

	 my $toad = Mojo::Server::Hypnotoad->new;
	 $toad->run('./myapp.pl', './hypnotoad.conf');

DESCRIPTION
       Mojo::Server::Hypnotoad is a full featured UNIX optimized preforking
       non-blocking I/O HTTP 1.1 and WebSocket server built around the very
       well tested and reliable Mojo::Server::Daemon with "IPv6", "TLS",
       "Bonjour", "libev" and hot deployment support that just works.

       To start applications with it you can use the hypnotoad script.

	 $ hypnotoad myapp.pl
	 Server available at http://127.0.0.1:8080.

       You can run the exact same command again for automatic hot deployment.

	 $ hypnotoad myapp.pl
	 Starting hot deployment for Hypnotoad server 31841.

       For Mojolicious and Mojolicious::Lite applications it will default to
       "production" mode.

       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.

SIGNALS
       You can control "hypnotoad" at runtime with signals.

   Manager
       "INT", "TERM"
	 Shutdown server immediately.

       "QUIT"
	 Shutdown server gracefully.

       "TTIN"
	 Increase worker pool by one.

       "TTOU"
	 Decrease worker pool by one.

       "USR2"
	 Attempt zero downtime software upgrade (hot deployment) without
	 losing any incoming connections.

	   Manager (old)
	   |- Worker [1]
	   |- Worker [2]
	   |- Worker [3]
	   |- Worker [4]
	   `- Manager
	      |- Worker [1]
	      |- Worker [2]
	      |- Worker [3]
	      `- Worker [4]

	 The new manager will automatically send a "QUIT" signal to the old
	 manager and take over serving requests after starting up
	 successfully.

   Worker
       "INT", "TERM"
	 Stop worker immediately.

       "QUIT"
	 Stop worker gracefully.

CONFIGURATION
       "Hypnotoad" configuration files are normal Perl scripts returning a
       hash.

	 # hypnotoad.conf
	 {listen => ['http://*:3000', 'http://*:4000'], workers => 10};

       The following parameters are currently available:

   "accepts"
	 accepts => 100

       Maximum number of connections a worker is allowed to accept before
       stopping gracefully, defaults to 1000.  Setting the value to 0 will
       allow workers to accept new connections infinitely.

   "backlog"
	 backlog => 128

       Listen backlog size, defaults to "SOMAXCONN".

   "clients"
	 clients => 100

       Maximum number of parallel client connections per worker process,
       defaults to 1000.

   "graceful_timeout"
	 graceful_timeout => 15

       Time in seconds a graceful worker stop may take before being forced,
       defaults to 30.

   "group"
	 group => 'staff'

       Group name for worker processes.

   "heartbeat_interval"
	 heartbeat_interval => 3

       Heartbeat interval in seconds, defaults to 5.

   "heartbeat_timeout"
	 heartbeat_timeout => 2

       Time in seconds before a worker without a heartbeat will be stopped,
       defaults to 5.

   "keep_alive_requests"
	 keep_alive_requests => 50

       Number of keep alive requests per connection, defaults to 25.

   "keep_alive_timeout"
	 keep_alive_timeout => 10

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

   "listen"
	 listen => ['http://*:80']

       List of one or more locations to listen on, defaults to
       "http://*:8080".	 See also "listen" in Mojo::Server::Daemon for more
       examples.

   "lock_file"
	 lock_file => '/tmp/hypnotoad.lock'

       Full path to accept mutex lock file, defaults to a random temporary
       file.

   "pid_file"
	 pid_file => '/var/run/hypnotoad.pid'

       Full path to PID file, defaults to "hypnotoad.pid" in the same
       directory as the application.

   "proxy"
	 proxy => 1

       Activate reverse proxy support, defaults to the value of the
       "MOJO_REVERSE_PROXY" environment variable.

   "upgrade_timeout"
	 upgrade_timeout => 15

       Time in seconds a zero downtime software upgrade may take before being
       aborted, defaults to 30.

   "user"
	 user => 'sri'

       Username for worker processes.

   "websocket_timeout"
	 websocket_timeout => 150

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

   "workers"
	 workers => 10

       Number of worker processes, defaults to 4.  A good rule of thumb is two
       worker processes per cpu core.

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

   "run"
	 $toad->run('script/myapp', 'hypnotoad.conf');

       Start server.

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

	 HYPNOTOAD_DEBUG=1

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

perl v5.14.1			  2011-09-06	    Mojo::Server::Hypnotoad(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