gpt4 book ai didi

php - 清算资源

转载 作者:可可西里 更新时间:2023-10-31 22:57:15 24 4
gpt4 key购买 nike

是否可以清除PHP中的所有资源?

我知道您可以使用 get_defined_vars 获取所有已定义的函数使用 unset,您可以轻松清除这些资源。

但这对我来说还不够。我有一个运行很长时间(~1h 30m)来执行许多功能的脚本..但是在执行过程中脚本收集的信息不再重要..脚本导出产品并且每个产品大约 0.2MB - 0.5MB产品(3200 个产品)

那是超过 600mb 的内存使用量。我尽可能地优化了脚本,但我并没有把它变小。

我可以使用 get_included_files 获取所有包含的文件或 get_declared_classes ;是否可以清除这些信息?删除类(除了一些必需的类,例如自动加载器类)或其他包含的文件,以便我可以释放更多 RAM?

或者您知道在执行时优化服务器使用的其他方法吗?

也许这是一个愚蠢的问题,但我很高兴每一个提示都可以提高 PHP 脚本的性能。

脚本环境信息:脚本运行在旧的Magento 1.4版本上,缓存和性能存在巨大问题;目前无法更新到较新版本。

最佳答案

我们有一个脚本消耗了高达 2GB 的内存,并且疯狂地泄漏内存(它使用 Doctrine 1.1)。

在尽可能多地unset()ing 之后,我们将gc_enable() 添加到脚本的顶部,并且gc_collect_cycles()在战略位置。

这确实有助于回收一些已用内存,但确实会稍微降低脚本速度。

关于php - 清算资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11761779/

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