Perlでいくつかの同時XMLフィードリクエストを作成する必要があります。 とは何ですか?これを行う方法はですか?Perlで同時にWebリクエストを行う最速の方法は何ですか?
答えて
私はおそらく、おそらくこのように、AnyEventを使用します。私は似たようなのためにLWP::Parallel::UserAgentを使用
use AnyEvent;
use AnyEvent::HTTP;
sub get_feeds {
my @feeds = @_;
my $done = AnyEvent->condvar;
my %results;
$done->begin(sub { $done->send(\%results) });
for my $feed (@feeds){
$done->begin;
http_get $feed, sub { $results{$feed} = \@_; $done->end };
}
$done->end;
return $done;
}
my $done = get_feeds(...);
my $result = $done->recv; # block until all feeds are fetched
AnyEvent :: HTTPへのリンクはhttp://search.cpan.org/~mlehmann/AnyEvent-HTTP/です。 – gpojd
。 PODの例:
require LWP::Parallel::UserAgent;
$ua = LWP::Parallel::UserAgent->new();
...
$ua->redirect (0); # prevents automatic following of redirects
$ua->max_hosts(5); # sets maximum number of locations accessed in parallel
$ua->max_req (5); # sets maximum number of parallel requests per host
...
$ua->register ($request); # or
$ua->register ($request, '/tmp/sss'); # or
$ua->register ($request, \&callback, 4096);
...
$ua->wait ($timeout);
...
sub callback { my($data, $response, $protocol) = @_; .... }
LWP :: Parallelは現時点でテストに失敗します。 –
私はそれがもはや維持されていないと思う。 AnyEvent :: HTTPを使用するようにすべての作業を移動しました。 – gpojd
実際には、AnyEvent::Curl::Multiは、libcurlの上に構築されたノンブロッキングライブラリです。非常に高速で同時利用可能なトン数。 AnyEvent :: HTTP、IMOよりもはるかに強力です。
- 1. httpリクエストを行う最良の方法は何ですか
- 2. perlで文字列をインクリメントする最速の方法は何ですか?
- 3. "同じ"時間に30個のオブジェクトをメッセージする最も簡単で最速の方法は何ですか?
- 4. ajaxリクエストを処理する最速の方法は何ですか?
- 5. Javaでは、システム時間を得る最も速い方法は何ですか?
- 6. 整数除算を行う最も速い方法は何ですか?
- 7. 同時に複数の構造体フィールドを突き詰める最も速い方法は何ですか?
- 8. HTTPリクエストを実行して404を確認する最も速い方法は何ですか?
- 9. メテオでIPトラックツールをインストールするには、最速/最速/最も経済的な方法は何ですか?
- 10. 2つのTビットマップが同じかどうかを確認する最速の方法は何ですか?
- 11. JQueryを使用せずにJavaScriptでAJAXリクエストで長いポーリングを行う最良の方法は何ですか?
- 12. テーブルにpostgreSQLの行がないかどうかを調べる最速の方法は何ですか?
- 13. デスクトップをストリーミングする最も速い方法は何ですか?
- 14. タイプをチェックする最も速い方法は何ですか?
- 15. iOSで最も速い描画方法は何ですか?
- 16. デバイス間で最も速い通信方法は何ですか?
- 17. PERFORCEで高速で安全な同期を行う方法は?
- 18. 「低速リクエスト」とは何ですか?
- 19. 1台のマシンで最も高速なPerl IPC /メッセージキューは何ですか?
- 20. ページロード時にAJAXリクエストを行う方法
- 21. イメージがPHPで有効かどうかを確認する最善の最速の方法は何ですか?
- 22. gitブランチが作成された時期を知る最も簡単で最速の方法は何ですか?
- 23. 少数のユーザー間で迅速にデータを同期する最善の方法は何ですか?
- 24. Perlでは "最後に"何が行われますか?
- 25. ライブWebアプリケーションにいくつかのログを挿入する最も速い方法は何ですか?
- 26. MySQLは何千もの行を数える最速の方法
- 27. 同じ地域のS3からEC2に大きなファイルをダウンロードする最速の方法は何ですか?
- 28. 複数のブラウザとブラウザのバージョン間でWebアプリケーションをテストする最速の方法は何ですか?
- 29. サーバで継続的にリクエストを行う最も効率的な方法は何ですか?
- 30. 膨大な量の同時リクエストをWebサーバーにシミュレートする方法は?
最も速いのは、実装が最も速いソリューションですか、実装されてすぐに最速となるソリューションですか? – Marcus