2009-10-22 63 views
4

我正试图学习如何配置perl内存。为什么我的脚本在使用mod_perl运行时使用更多内存?

我有一个非常简单的Perl hello-world脚本,我想知道它在内存中的大小。

我使用GTop实用程序来测量内存(由Stas Beckman设计的recommended in mod_perl book)。 GTop提供了令我困惑的结果。

当我从命令行运行脚本GTop说:7M。

当我在mod_perl下运行它时,GTop说:54M。

为什么这么多?!

为什么脚本内存在mod_perl下增长很多? 或者我可能以错误的方式测量内存? 你如何剖析perl脚本内存?

下面是脚本,其输出(I已经添加逗号手动容易地读取的数字)

> perl simple.pl 

size: 7,282688 
share: 2,027520 
diff: 5,255168 
  • 运行mod_perl下从命令行

    1. 运行

       
      size: 54,878208 
      share: 4,661248 
      diff: 50,216960 
      

    脚注牛逼simple.pl

    #!/usr/bin/perl 
    
    use strict; 
    use warnings; 
    use CGI(); 
    
    my $cgi = CGI->new; 
    
    print $cgi->header('text/plain'); 
    
    use GTop; 
    
    print "Hello, world!\n"; 
    my $m = GTop->new->proc_mem($$); 
    print "size: ".$m->size."\n"; 
    print "share: ".$m->share."\n"; 
    my $diff = $m->size - $m->share; 
    print "diff: $diff\n"; 
    
  • 回答

    相关问题