【问题标题】:Any suggestions on many users uploading lots of large photos?对许多用户上传大量大照片有什么建议吗?
【发布时间】:2012-02-22 04:54:04
【问题描述】:

我正在构建一个 Web 应用程序,允许用户上传高分辨率图像(大约 10mb)。上传后,它会创建上传的中等大小和缩略图大小的图像。似乎需要 100mb 以上的内存分配给 PHP 才能调整到中等图像的大小。我在这种可扩展性方面没有很多经验,网站会容易崩溃吗?我是否需要具有 16gb 内存的网络服务器来处理调整大小的负载?有替代方案吗?任何信息将不胜感激!

谢谢!

【问题讨论】:

    标签: php image upload gd


    【解决方案1】:

    您可以创建要调整大小的图像队列,并确保在任何给定时间仅调整 x 个图像的大小。 x 将取决于可用内存量。

    如果您在上传图片后立即调整图片大小,您一定会遇到调整图片大小超出内存容量的情况,从而导致崩溃。

    相反,在上传图片时,将它们添加到数据库中。然后有一个 PHP 脚本从数据库中获取 x 个图像,为这些图像中的每一个派生新进程以调整它们的大小。当进程向父进程报告完成时,父进程从队列中删除图像的条目并获取另一个。清洗,冲洗,重复。

    【讨论】:

      【解决方案2】:
      • 运行基准测试
      • 在后台进行处理
      • 在非高峰时间处理
      • 使用更轻量级的库

      【讨论】:

      • 有哪些轻量级的库?目前我使用 GD,因为它是我的托管服务提供商所拥有的
      • 对不起,我并不是说我知道,我只是想通过 php 运行 GD 可能不是批处理的最佳选择
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-28
      相关资源
      最近更新 更多