HTTP::Response -- on disk

| コメント(0) | トラックバック(0)



実際にWebサーバーにアクセスしてHTTP::Responseを作る、というアプリケーションを書く時にいっつも気になるのがこのHTTP::Responseのcontentの部分って全部メモリに乗っかるということ。one linerでサクッと一個ファイルをダウンロードするくらいならいいけど、クローラーとかで永続的にプロセスが生きている場合はこのメモリがどんどんかさばってくる。というわけで、HTTP::Response::OnDisk書きました。


API的にHTTP::Responseと互換性のあるようにしたので、使う時は今まで



use HTTP::Response;

my $res = HTTP::Response->new(200, "OK");
$res->add_content(...);

とかしてたところを



use HTTP::Response::OnDisk;

my $res = HTTP::Response::OnDisk->new(200, "OK");
$res->add_content(...);

とするだけ。これでHTTP::Responseの中身は一時ファイルに全部格納される。先ほどCPANにアップロード。


Author

Daisuke Maki (a.k.a lestrrat): Perl hacker, Director of Japan Perl Association, YAPC::Asia Tokyo Organizer (2009-2012), Fluent in Japanese, English. Ex-Brazilian (sorta)

#perl #c #ruby #java #mysql #english #japanese #opensource #stf #cooking #scotch #cigar


このエントリーをはてなブックマ
ークに追加

翔泳社よりモダンPerl入門(2010)を出版させていただいております。できれば内容をアップデートしたいので是非皆様・・・現在の在庫処理にお力をお貸しください!><

月別アーカイブ