> 最近在基于 mod_perl 做一个应用。mod_perl 在一个 location 里面可以有多个 handler,我现在用到的是
> > PerlResponseHandler 和 PerlLogHandler 有方法可以在这些 handler 之间传递数据么?
有的。不过我也忘记了,:)
> >
> > 另外,好像每个 req 过来,mod_perl 都是会执行整个 pm 里面的内容,而不止 sub handler 里面的,是么?
会执行整个pm里的内容,但handler外的只在apache进程启动时执行一次,而
handler是重复执行。
通常利用这点构造闭包,打个比方:
package ABC;
my $handle = Some::Event->new;
sub handler {
if ($handle) {
do something
} else {
$handle = Some::Event->new;
}
}
1;
此时$handle作用相当于一个包变量,它只在apache进程启动时初始化一次,节省
调用开销(例如这个 Some::Event->new是某某DB或文件操作)。
Regards.
--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com。
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
没有评论:
发表评论