AnyEvent::FCGI(3) non-blocking FastCGI server


use AnyEvent;
use AnyEvent::FCGI;
my $fcgi = new AnyEvent::FCGI(
port => 9000,
on_request => sub {
my $request = shift;
'OH HAI! QUERY_STRING is ' . $request->param('QUERY_STRING'),
'Content-Type' => 'text/plain',
my $timer = AnyEvent->timer(
after => 10,
interval => 0,
cb => sub {
# shut down server after 10 seconds
$fcgi = undef;


This module implements non-blocking FastCGI server for event based applications.



This function creates a new FastCGI server and returns a new instance of a "AnyEvent::FCGI" object. To shut down the server just remove all references to this object.


port => $port
The TCP port the FastCGI server will listen on.
host => $host
The TCP address of the FastCGI server will listen on. If undefined will be used.
socket => $path
Path to UNIX domain socket to listen. If specified, "host" and "port" parameters ignored.
on_request => sub { }
Reference to a handler to call when a new FastCGI request is received. It will be invoked as


where $request will be a new AnyEvent::FCGI::Request object.

backlog => $backlog
Optional. Integer number of socket backlog (listen queue)


This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic.


Vitaly Kramskikh, <[email protected]>