Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 956 Categories, Downloaded 50.477.274 Times

HTTP::Async 0.05

  Date Added: October 16, 2010  |  Visits: 995

HTTP::Async

Report Broken Link
Printer Friendly Version


Product Homepage
Download (137 downloads)

HTTP::Async is a Perl module that can process multiple HTTP requests in parallel without blocking. SYNOPSIS Create an object and add some requests to it: 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/ ) ); and then EITHER process the responses as they come back: while ( my $response = $async->wait_for_next_response ) { # Do some processing with $response } OR do something else if there is no response ready: while ( $async->not_empty ) { if ( my $response = $async->next_response ) { # deal with $response } else { # do something else { } OR just use the async object to fetch stuff in the background and deal with the responses at the end. # Do some long code... for ( 1 .. 100 ) { some_function(); $async->poke; # lets it check for incoming data. } while ( my $response = $async->wait_for_next_response ) { # Do some processing with $response } Although using the conventional LWP::UserAgent is fast and easy it does have some drawbacks - the code execution blocks until the request has been completed and it is only possible to process one request at a time. HTTP::Async attempts to address these limitations. It gives you a Async object that you can add requests to, and then get the requests off as they finish. The actual sending and receiving of the requests is abstracted. As soon as you add a request it is transmitted, if there are too many requests in progress at the moment they are queued. There is no concept of starting or stopping - it runs continuously. Whilst it is waiting to receive data it returns control to the code that called it meaning that you can carry out processing whilst fetching data from the network. All without forking or threading - it is actually done using select lists..

Requirements: No special requirements
Platforms: Linux
Keyword: Http Requests Httpasync In Parallel Libraries Module Parallel Perl Perl Module Process Programming Requests Response
Users rating: 0/10

License: Freeware Size: 15.36 KB
HTTP::ASYNC RELATED
Science  -  AutoDock Software in Parallel with GPUs 1.0
Using the CUDA API this project modifies the AutoDock software to run in parallel on NVIDIA GPUs. Users will be able to download and compile the code and use AutoDock on CUDA capable Graphics Cards. Autodock is located at http://autodock.scripps.edu/
33.74 MB  
Network & Internet  -  mod_backhand 1.2.2
mod_backhand is an Apache module that allows seamless redirection of HTTP requests from one web server to another. This redirection can be used to target machines with under-utilized resources, thus providing fine-grained, per-request load...
256 KB  
Proxy Server Tools  -  Proxy Detector 0.1
Proxy Detector is a PHP class that can detect HTTP requests via proxy. This class can detect if a visitor uses a proxy server by scanning the headers returned by the user client. When the user uses a proxy server, most of the proxy servers alter...
2.05 KB  
Network & Internet  -  Ryans In/Out Board 2.2
Ryans In/Out Board is a perl driven in/out board for small-medium size organisations that needs staff to be aware of other staff whereabouts. (Ryans In/Out Board will work for larger organisations but it may be more cumbersome to use with larger...
18.43 KB  
Networking  -  HTTP Upload Tool in PHP for Scripts 1.0
PHP Upload Tool provides a simple file management web interface.The motivation was to create a drop-box for users to be able to upload files similar to FTP, but easier for users to use and a non-technical admin to manage.
10 KB  
Libraries  -  File::Find::Parallel 0.0.4
File::Find::Parallel allows you to traverse a number of similar directories in parallel. SYNOPSIS use File::Find::Parallel; my $ffp = File::Find::Parallel->new( qw( /foo /bar ) ); print "Union:n"; my $union = $ffp->any_iterator print "...
9.22 KB  
Libraries  -  DBIx::XMLServer 0.02
DBIx::XMLServer is a Perl module to serve data as XML in response to HTTP requests. SYNOPSIS use XML::LibXML; use DBIx::XMLServer; my $xml_server = new DBIx::XMLServer($dbh, "template.xml"); my $doc = $xml_server->process($QUERY_STRING);...
29.7 KB  
Programming  -  Massively Parallel PO Editor 1.0
Simple text editor for editing multiple language files in parallel. Corresponding translations are automatically highlighted in order to aid reviewing against multiple sources. Supports gettext PO and key = value format. Highly recommended for...
69.9 KB  
Utilities  -  GNU Parallel 20111022
GNU parallel is a shell tool for executing jobs in parallel using one or more computers. A job is can be a single command or a small script that has to be run for each of the lines in the input. The typical input is a list of files, a list of...
194.56 KB  
Network & Internet  -  mod_whois 0.1
mod_whois module maps WHOIS queries into standard HTTP requests. After the "translation", the request can be processed by the usual mechanisms (mapping to static content, running CGI & PHP scripts, ...). Compile & Install apxs -i -a -c...
4.1 KB  
NEW DOWNLOADS IN PROGRAMMING, LIBRARIES
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  Math::GMPf 0.29
Math::GMPf - perl interface to the GMP library's floating point (mpf) functions.
30.72 KB  
Programming  -  Net::Wire10 1.08
Net::Wire10 is a Pure Perl connector that talks to Sphinx, MySQL and Drizzle servers. Net::Wire10 implements the low-level network protocol, alias the MySQL wire protocol version 10, necessary for talking to one of the aforementioned...
30.72 KB  
Programming  -  logilab-common 0.56.2
a bunch of modules providing low level functionnalities shared among some python projects devel Please note that some of the modules have some extra dependencies. For instance, logilab.common.db will require a db-api 2.0 compliant...
174.08 KB  
Programming  -  OpenSSL for linux 1.0.0a
The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolkit implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a...
3.83 MB  
Libraries  -  wolfSSL 4.0.0
The wolfSSL embedded SSL/TLS library is a lightweight SSL library written in ANSI standard C and targeted for embedded and RTOS environments - primarily because of its small size, speed, and feature set. It is commonly used in standard operating...
3.88 MB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB