我的应用程序上传表单允许用户上传照片。在线可能有1000人,每人都可以上传自己的照片。
我的问题是:我应该在上传后立即调整上传的照片大小,还是创建cron,这会在晚上调整所有上传的照片大小?
答案 0 :(得分:1)
在PHP中,照片调整大小并不是一个非常缓慢的过程,当然等待服务器的资源(我想图像的大小可能是一个因素 - 给定10MB +图像)。
我完全建议您在上传后立即调整大小。这样做不会在凌晨3点或者你的cron运行时构建队列,并且你还可以向刚刚上传它的用户显示已调整大小的图像(缩略图,半页大小等) - 漂亮用户体验中的“必须”。
答案 1 :(得分:0)
cron作业是一项很好的资产,因为您不会对服务器征税,因为您可以在凌晨4点运行它。
然而,在cron作业完成之前,您的用户浏览器要下载该图像呢? :(想想你的用户,并使服务器足够快,立即调整图片大小。此外,你可能也想看看优化照片!
答案 2 :(得分:0)
您可以使用cron,但您的用户必须等待很长时间才能处理照片。 我建议使用第二个服务器和一个等待列表,你需要重新调整所有图片。第二台服务器逐个处理图片(1分钟crontab)并将它们放回第一台服务器。这样,您的用户就不必等待这么长时间,并且您的第一台服务器不会因需要调整大小的图像而过载。
如果您只想使用一台服务器,您只需添加一个cron并使用nice,ionice和imagemagick调整图片大小。
在处理图片时,您可以为图片放置占位符,让访问者知道他们的图片正在处理中。