我正在实施一个处理大量图像的项目。
您认为以下两种方法的优缺点是什么:
- 我需要存储数千个项目,每个项目作为多个字符串属性和一个图像。
- 每个项目作为 ID(整数)
- MyISAM 表
- How would you store the images:
-
方法1:将图片存入一个目录,每张图片命名为ID.jpg
-
方法2:将图像作为二进制 BLOB 存储到数据库中
使用方法 1 我可以直接访问图像,仅此而已
<img src="same_directory/10.jpg" />
使用方法 2,我仍然可以使用上面的 HTML,但需要将 jpg 访问重定向到 PHP 脚本,该脚本将从数据库返回真实图像。
就性能而言,您认为哪一个更快?
我热衷于接近1。
方法1的优点:
- 从网络服务器检索平面文件速度更快。
- 大多数网络主机可能会遵循这种方法。
- 文件系统对于平面文件存储来说速度更快。
方法2的优点:
- 如果您迁移您的数据,您的所有数据都会保存在一个地方
网站/数据库图像就在那里
- 排序/删除/等等更容易......
- 由于您必须通过 PHP 脚本提供服务,因此您可以执行
其他东西,例如安全性(如果需要)或图像处理
(显然你也可以使用平面文件来做到这一点,但是你必须制作
确保不能通过将图像留在公共场所来绕过安全性
目录)。
考虑到性能,方法 1 最好继续。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)