gpt4 book ai didi

perl - 如何追踪 mod_perl 内存泄漏?

转载 作者:行者123 更新时间:2023-12-04 14:37:25 25 4
gpt4 key购买 nike

我正在使用 mod perl 1.3.0 和 apache 1.3.41 perl 版本 5.8.6,并且内存大小似乎每 3rd 或 4th 请求增长约 4k。我们正在运行的 Perl 脚本很简单:

print "Content-type: text/html\n\n";  print "baby";

然而,当我们用 apache 基准测试抨击 apache 进程时,它只会不断增长。我们正在击中它:
ab -n 100000 -c 1 http://localhost/search/search.cgi &> /dev/null

我们观察到进程大小在大约 20000 个请求后从大约 4 兆字节增长到 24 兆字节。

要回答以下问题:
我们正在 redhat Enterprise 4.7 上执行此操作。
它被挑出来是因为我们遇到了一个静态文件,或者一个直接的 cgi 请求并且内存没有增长。当我们使用 PerlHandler Apache::Registry 或 PerlRun,或者只是将 PerlHandler 指向一些作为处理程序的代码时,它们都会泄漏。

有没有人见过这样的,或者知道发生了什么?

编辑:

谢谢各位的回答。我已经使用了 Devel::Cycle 并发现了一个漏洞,但这里的问题是我们已经剥离了我们的代码来打印标题和语句。 Perl 中的打印功能不可能泄漏(我希望......)。我已经阅读了 Practical Modperl 中的内存泄漏部分,但它处理编码问题,而且除非 Perl 的打印功能存在问题,否则它不是代码。

最佳答案

你看过优秀的Practial mod_perl和它的 chapter on memory leaks ?

关于perl - 如何追踪 mod_perl 内存泄漏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/466601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com