[英]PHP bug tracker: storing attached files
给定一个带有SQL DB(MySQL,PostgreSQL,Oracle ...)的PHP错误跟踪器项目,该项目应该能够存储每个错误的附件文件。
您基本上如何将信息(文件信息和文件本身)存储在数据库和磁盘上?
例如
...或者有没有更有效的方法?
谢谢。
编辑
它还取决于您如何获取这些文件,您是否使用获取所有错误并为您创建链接的后端网页? 还是在发生错误后收到电子邮件,并且必须手动查找? 我认为这种选择没有太大意义。
文件将通过错误跟踪Web应用程序列出/上传/下载(=> HTTP上传/下载)。
除了开发人员/系统管理员之外,没有人能够查看自动生成的目录结构(但是,拥有“清晰的”结构会更方便)。
我会让文件系统完成其工作(文件存储)。 数据库可以用于文件存储,但是(通常)效率不高,例如,文件数据可以放在数据库缓冲区中-这本身还不错,但是它可能会占用其他表,行数据并减少资源其他查询的性能。
根据日期和项目名称等的有意义的组合创建目录将有助于减少在同一目录中有许多文件时的性能损失。
我强烈建议使用可识别的目录结构,甚至可能基于日期或与错误文件名的(部分)匹配的内容。 Fe'20110506-bugfile'将在/ 2011/05/06 /中也许有点匹配,仅2011/05 /就足够了。
它还取决于您如何获取这些文件,您是否使用获取所有错误并为您创建链接的后端网页? 还是在发生错误后收到电子邮件,并且必须手动查找? 我认为这个选择没有太大意义。
一个稍微不同的选项是在表错误(http://www.php-mysql-tutorial.com/wikis/mysql-tutorials/uploading-files-to-mysql-database.aspx)中将文件添加到数据库中,那么您不必创建目录结构BUT,这当然不允许您使用FTP来查找文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.