【问题标题】:File Limit on Shared LAMP共享 LAMP 的文件限制
【发布时间】:2010-06-25 12:25:35
【问题描述】:

我在共享托管服务器上有一个网站。它们有 50,000 个文件的硬性限制。

我还有一段时间要走,但我的网站允许上传图片 (jpg)、文件上传,有没有人知道任何特殊技巧可以帮助我通过将多个图片文件存储在一个文件中来恢复我的文件计数。

大多数图像文件都在 300k 以下,但它们的颜色、大小、分辨率等都不同。

我的图像是成组的,所以我正在考虑制作一个 ZIP 文件,并将一个组中的所有图像添加到一个 ZIP 文件中,但为了速度,我不希望压缩,但当时不确定最佳方式要显示图像,我是否必须将其提取到文件中然后提供?

有什么想法吗?或者有什么新的/不同的想法?

将文件作为 Blob 存储在 MySQL Db 中也不是一种选择,因为我的主机对 DB 的大小有 500mb 的限制。

谢谢 呸呸呸

【问题讨论】:

  • 获得更好的托管就像其他人所说的实际解决方案一样。如果要将文件存储在“容器”文件中,最好使用 tar 然后 (g)zip。

标签: php image lamp


【解决方案1】:

如果您的网站非常成功,您将需要升级您的主机。这是您可以得到的最佳答案,因为围绕这些限制编写网站只会创建糟糕的代码。

我建议将图像与在应用程序中标记图像所需的任何信息一起存储在数据库中。当您达到 500mb 限制的一半时,请获得一个限制较少的帐户。

【讨论】:

  • 将图像本身放入数据库并不是必要的好主意(而不是仅仅存储文件的位置)。有时文件系统的性能比数据库好。
  • @Jeremy Stein - 我建议将数据库选项与迁移主机结合使用。移动数据库比移动数千个图像文件要容易得多。如果你走文件系统路线,你需要注意一个目录中存储了多少图像。
【解决方案2】:

理论上,您可以将图像拼接在一起并使用 CSS 来显示您想要的图像部分。但是,除非您将其用于一些巧妙的缓存方案,否则这不是绕过主机文件限制的好计划。

【讨论】:

    【解决方案3】:

    如果您的限制只有 50k,那么无论如何您都会遇到问题。将它们放在您的数据库中会给那里带来令人讨厌的压力。将它们放入 zip 文件只会给您的服务器增加额外的负载..

    我认为最好的办法是将文件移至 Amazon 的 S3。这确实是它的设计用途。基本上,当您上传文件时,您会在本地保存/排队它们,然后在完成任何必要的验证后将它们推送到 S3。它通常很便宜(8-10 美分/GB?)。更好的是,当您添加更多服务器或移动服务器时,您不必担心同步文件系统或移动文件。

    这是一个空中的大型 FTP 站点。 ;)

    Smugmug 正是这样做的: 他们的帖子:http://don.blogs.smugmug.com/2006/11/10/amazon-s3-show-me-the-money/ 亚马逊案例研究:http://aws.amazon.com/solutions/case-studies/smugmug/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-11-22
      • 2020-05-03
      • 1970-01-01
      • 1970-01-01
      • 2013-03-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多