2014-01-30 74 views
0

我正在PHP的退休之家的网站上工作,并且我制作了一个用户界面,必须将大量图像同时调整为300/300px的大小。调整大量图像的大小

用户在'temp'目录中上传许多图像,当他希望保存它们时,每个图像的大小被调整为大小,然后这两个图像被保存和/或移动到不同的目录,取决于它们的大小。

大图像到“缩略图”目录,将小图像调整到“小”目录。

我的问题是,在那种情况下是否会有任何性能命中或脚本失败或脚本超时?例如,50张图像,总共50MB(或200MB)都会逐个调整大小,然后全部保存和/或移动到所需的目录。

我没有这样做因为我在限期内,我不能花时间做这件事,然后发现这是一个糟糕的设计决定。

预先感谢您

+0

定义“性能打击”。什么是可接受的?我们不能给你一个大致的时间量,因为这涉及太多的本地化变量 – crush

+0

是的,但是如果我没有弄错,脚本超时也有主机限制。如果使用上传200MB的图像,应用程序是否会爆炸?在正常情况下,我会这样做,但我在紧迫的最后期限内。 –

+0

我们不知道你的主人。您需要与他们核对他们强制执行的脚本超时是否有一些硬性上限。我不知道他们为什么会。 – crush

回答

1

调整大小50张照片可能是太多处理,同时希望用户等待它做的事。在这种情况下,我建议您的Web应用程序将作品提交到作业队列,然后立即返回给用户,并提供某种消息,指出他们的照片即将处理。然后,您将有一个持续运行的脱机作业,可用于排队中的任何待处理任务。这可能非常简单,只需将文件放在目录中,然后通过cron运行一个shell脚本,或者可以像Gearman worker那样更细致。

+0

这是一个只为网站所有者设计的管理用户界面,因此等待很好。 –

+1

如果让他们等待是可以接受的,那么你处于脚本超时的摆布之中。您需要了解它是什么,并运行一些测试以查看50图像调整大小是否需要更长时间。 –

+0

所以脚本超时是关键。非常感谢 –