use HTTP::Async; my $async = HTTP::Async->new; # create some requests and add them to the queue. $async->add( HTTP::Request->new( GET => 'http://www.perl.org/' ) ); $async->add( HTTP::Request->new( GET => 'http://www.ecclestoad.co.uk/' ) ); while ( my $response = $async->wait_for_next_response ) { # Do some processing with $response }