[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#610477: ITP: libhttp-async-perl -- process multiple HTTP requests in parallel without blocking



Package: wnpp
Severity: wishlist
Owner: "Ernesto Hernández-Novich (USB)" <emhn@usb.ve>


* Package name    : libhttp-async-perl
  Version         : 0.09
  Upstream Author : Edmund von der Burg <evdb@ecclestoad.co.uk>
* URL             : http://search.cpan.org/dist/HTTP-Async/
* License         : Artistic
  Programming Lang: Perl
  Description     : process multiple HTTP requests in parallel without blocking

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.



Reply to: