我正在寻找使用带有事务支持的 php 来实现文件系统操作的方法。就像我在事务中执行移动、复制和删除等操作一样,如果其中一个操作失败,脚本需要恢复所有已经执行的操作。我有点无能为力,正在寻求指导如何实现它。如果存在可用的库或解决方案?如果问题听起来含糊不清,我深表歉意。
问问题
2564 次
3 回答
4
最常见的模式是将所有内容复制到其他地方,对副本进行操作并在一切正常时替换原件。
有些东西告诉我 PHP 流包装器也可能对此有用。可以覆盖“file://”协议并在虚拟文件系统中运行(概念证明:https ://github.com/Respect/Test#streamwrapper )。
于 2013-02-27T15:51:19.257 回答
3
一种选择是考虑将文件存储为数据库中的 BLOB,而不是文件。这些将支持事务以及数据库的所有其他功能。
可以在ZFS等高级文件系统上支持事务,但不能直接使用 PHP,并且 Linux 默认情况下不安装 ZFS。
于 2013-02-27T15:51:12.377 回答