Here's an example from the Mojolicious Cookbook:
use Mojo::UserAgent; use Mojo::IOLoop; # Parallel non-blocking requests my $ua = Mojo::UserAgent->new; $ua->get('http://metacpan.org/search?q=mojo' => sub { my ($ua, $mojo) = @_; ... }); $ua->get('http://metacpan.org/search?q=mango' => sub { my ($ua, $mango) = @_; ... }); # Start event loop if necessary Mojo::IOLoop->start unless Mojo::IOLoop->is_running;
So in this example there are two GET requests sent, and callbacks execute once the requests are fulfilled. The event loop is implemented by Mojolicious's standalone event loop, but if you have EV installed on your system, internally that will be used automatically, for improved performance.
Non-blocking concurrency seems to be a strong focus in Mojolicious's ongoing development. As a UserAgent, it's probably hard to find a solution that has better non-blocking IO support from its developers.
Dave
In reply to Re: Most memory efficient way to parallel http request
by davido
in thread Most memory efficient way to parallel http request
by supernoob
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |