mod_perlの中でAnyEventを使って何か上手く動かないというときは timerを使う前にAnyEvent->now_updateをすると良いです。 一つ前のリクエストを処理し終わってから、時刻が更新されていないケースがあります。 AnyEvent->nowは現在時刻を返しますが、実装によ... 続きを読む
perlmod_perlでどのくらいメモリー使われてるかとか調べたかったのでApache2::Statusを使ってみた。Shibuya.pmのLTにも含めようと思ったけど5分に押し込めるのは無理なのでここで公開。テスト対象としてCGI::Applicationで package HelloWorld; use strict; use... 続きを読む
08:02 | 先日のShibuya.pm #9のLightening Talkで「gdbでXS on mod_perlをデバッグ」という話をしてきました。XSを使い出すと、従来のPerl的デバッグだけでは不十分なのでgdbをうまく使って、効率的にデバッグしましょう、という話です。実は、はてな社内では1... 続きを読む
Apache::Test事始め 年末前後からApache::Testで真面目にテストを書き始めている。 ところが全くドキュメントがないんだね。いや、あるんだけど、携帯の機能を使いたいだけなのにあの厚いマニュアル読むの?みたいな感じで。まぁというわけでとにかくざくざくっ... 続きを読む
mod_perlのアプリケーションを作る時に、Configモジュールか何かにハッシュとかを書いて、モジュール自体をアプリの設定ファイル代わりにしていたが、やっぱり設定ファイルは別管理にしたいと思っていたので、ちょっと考えてみた。 startup.plはapacheの親プロ... 続きを読む
[warn] /test.cgi did not send an HTTP header おそらくModPerl::Registry環境でしかでないのだけど、動的コンテンツに対して、"If-Modified-Since"を送ると、error_logに、 [warn] /test.cgi did not send an HTTP header というのが、記録される。直接的な... 続きを読む
Soozy - mod_perl専用Webフレームワーク 自分が使ってるフレームワークをいきなり晒してしまうテスト。 perl5なコードを初めて書いた時に最初に作ったやつです。 最初はSledgeを使おうとも思ったんだけど、なんか色々とやってくれるのが疎ましくて Sledgeの肉を... 続きを読む
package Proj::Analizer; use GTop; use Template::Plugin::Comma; require Module::Pluggable::Fast; &main; sub proj_size { my $self = shift; my $proj_name = shift; my $before = GTop->new->proc_mem($$)->size; my $meth = "_${proj_name}_components";... 続きを読む
■[Perl]Hello, Sledge! 10 分で作る Sledge アプリとSledge ドキュメントをみてから二ヶ月弱、ようやく Sledge 環境を構築した。 apt で apache と mod_perl を入れた自宅 LAN 内のテストサーバに加えて、 coLinux 上でも apache と mod_perl を手動で コンパ... 続きを読む