Net::Server::MultiType(3)

NAME
Net::Server::MultiType - Net::Server personality

SYNOPSIS
  use Net::Server::MultiType;
  @ISA = qw(Net::Server::MultiType);
  sub process_request {
     #...code...
  }
  my @types = qw(PreFork Fork Single);
  Net::Server::MultiType->run(server_type=>\@types);

DESCRIPTION
Please read the pod on Net::Server first. This module is a personality, or extension, or sub class, of the Net::Server module.

This personality is intended to allow for easy use of multiple Net::Server personalities. Given a list of server types, Net::Server::MultiType will require one at a time until it finds one that is installed on the system. It then adds that package to its @ISA, thus inheriting the methods of that personality.

ARGUMENTS
In addition to the command line arguments of the Net::Server base class, Net::Server::MultiType contains one other configurable parameter.

  Key               Value            Default
  server_type       'server_type'    'Single'
May be called many times to build up an array or possible server_types. At execution, Net::Server::MultiType will find the first available one and then inherit the methods of that personality

CONFIGURATION FILE
`Net::Server::MultiType' allows for the use of a configuration file to read in server parameters. The format of this conf file is simple key value pairs. Comments and white space are ignored.

  #-------------- file test.conf --------------
  ### multi type info
  ### try PreFork first, then go to Single
  server_type PreFork
  server_type Single
  ### server information
  min_servers   20
  max_servers   80
  spare_servers 10
  max_requests  1000
  ### user and group to become
  user        somebody
  group       everybody
  ### logging ?
  log_file    /var/log/server.log
  log_level   3
  pid_file    /tmp/server.pid
  ### access control
  allow       .+\.(net|com)
  allow       domain\.com
  deny        a.+
  ### background the process?
  background  1
  ### ports to bind
  host        127.0.0.1
  port        localhost:20204
  port        20205
  ### reverse lookups ?
  # reverse_lookups on
  #-------------- file test.conf --------------

PROCESS FLOW
See the Net::Server manpage

HOOKS
There are no additional hooks in Net::Server::MultiType.

TO DO
See the Net::Server manpage

AUTHOR
Paul T. Seamons paul@seamons.com

SEE ALSO
Please see also the Net::Server::Fork manpage, the Net::Server::INET manpage, the Net::Server::PreFork manpage, the Net::Server::MultiType manpage, the Net::Server::Single manpage