在使用
Template::Toolkit时,对各种模板的性能进行基准测试的最佳方法是什么?
我想要的东西,将分解处理每个块或模板文件花费多少cpu /系统时间,不包括处理其他模板的时间.例如,Devel::DProf是没用的,因为它简单地告诉我在Template模块的各种内部方法中花费了多少时间.
解决方法
事实证明,用于template :: toolkit分析的Googling会产生最好的结果,一篇来自
November 2005 by Randal Schwartz的文章.由于版权不足,我无法复制和粘贴任何文章,但足以说您只需要获得
his source并将其用作一个模块后面的模板,就这样:
use Template; use My::Template::Context;
当您的脚本运行时,您将得到STDERR的输出:
-- info.html at Thu Nov 13 09:33:26 2008: cnt clk user sys cuser csys template 1 0 0.06 0.00 0.00 0.00 actions.html 1 0 0.00 0.00 0.00 0.00 banner.html 1 0 0.00 0.00 0.00 0.00 common_javascript.html 1 0 0.01 0.00 0.00 0.00 datetime.html 1 0 0.01 0.00 0.00 0.00 diag.html 3 0 0.02 0.00 0.00 0.00 field_table 1 0 0.00 0.00 0.00 0.00 header.html 1 0 0.01 0.00 0.00 0.00 info.html 1 0 0.01 0.01 0.00 0.00 my_checklists.html 1 0 0.00 0.00 0.00 0.00 my_javascript.html 1 0 0.00 0.00 0.00 0.00 qualifier.html 52 0 0.30 0.00 0.00 0.00 referral_options 1 0 0.01 0.00 0.00 0.00 relationship_block 1 0 0.00 0.00 0.00 0.00 set_bgcolor.html 1 0 0.00 0.00 0.00 0.00 shared_javascript.html 2 0 0.00 0.00 0.00 0.00 table_block 1 0 0.03 0.00 0.00 0.00 ticket.html 1 0 0.08 0.00 0.00 0.00 ticket_actions.html -- end
请注意,列出了块和单独的文件.
这是,IMHO比CPAN模块Template::Timer更有用.