gpt4 book ai didi

php 安全和可扩展的文件管理

转载 作者:行者123 更新时间:2023-11-29 05:30:33 25 4
gpt4 key购买 nike

我有一个用 UserCake 和 PHPMyEdit 开发的 PHP 网站,我的数据存储在 MySQL 中。现在我也想以一种可以控制不同用户的访问权限的方式上传 PDF 文件,而且该解决方案必须适用于大量文件上传。

我想知道在 MySQL 中存储 PDF 文件对我来说是一个很好的解决方案吗?

如果不是,最好的现成解决方案是什么?

谢谢,

最佳答案

将二进制文件存储在数据库中通常不是一个好主意。

存入数据库的优点:

  • 它允许您利用数据库的安全机制
  • 在数据库中存储 blob 还意味着您永远不必担心重复的文件名。
  • 还意味着当上传出错时,您可以回滚事务,而不必四处寻找损坏的文件并将它们从磁盘中删除。

存入数据库的缺点:

  • 您必须序列化要写入的文件,反序列化才能读取它们,这比仅写入/读取文件要慢得多;
  • 更高的内存使用率(想象一下加载一个包含许多行的结果集,所有行都带有 blob)
  • 将使您的数据库备份非常非常繁重且缓慢。
  • Blob 通常以 4kb 的 block 传输到数据库,对于大于 4kb 的文件,这会给您带来巨大的开销。

从数据库中检索文件路径并将文件直接流式传输给用户通常会更快。

编辑:我想通了,并提出了存储在数据库中的另外两个优势。只是编辑唱反调,给你所有的信息,让你自己决定哪种方法更适合你的情况。

关于php 安全和可扩展的文件管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15228580/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com