如何减少图像gd中的内存使用量或加快进程以更快地释放内存

时间:2011-05-21 07:27:28

标签: php gd memory-management

我有一个图像GD脚本,目前使用大约9MB的内存。 我得到了很多流量,因此有时它会耗尽我服务器上的大量内存。

有没有办法减少图像gd的内存使用量? 或者至少使脚本进程更快,以便更快地取消分配它正在使用的内存。

我尝试过更改图像质量,但没有效果。 我也试过改变图像像素大小,它减少了内存使用量,但并不多。

感谢。

2 个答案:

答案 0 :(得分:0)

如果没有看到代码就无法分辨,但除非它包含任何重大错误,否则答案可能是否定的。

您可以做的是使用外部imagemagick二进制文件 - 它在PHP的脚本内存限制之外运行 - 但这是一种完全不同的技术,并且需要您重写代码。

我假设你已经在缓存GD的结果,所以不是每个请求都会导致它运行吗?

答案 1 :(得分:0)

如果您担心内存限制,请尽量避免使用图像GD。 没有看到代码就很难解决问题,但我可以提出建议。

让不同的进程处理图像,例如,如果要调整图像大小,每次用户访问页面时都不要调整大小,而是运行带有窗口的cron或调度程序来调整所需的所有图像的大小定期调整大小并保存。所以会有更少的开销。

如果您提供更多代码,您将获得更好的帮助