AcidFS是一个Python文件系统,允许交互ACID语义,使用事务
特点:
- 在变化的当一个事务被提交的文件系统将只坚持,如果交易成功。
- 在一个事务的范围内,那么应用程序只能看到在事务开始的文件系统的状态相一致的文件系统视图。并发写入不影响当前上下文。
- 在所有更改的完整历史是可用的,因为文件存储在后备`Git`库。标准的`Git`工具链可以用来回忆过去的状态,回滚特别的变化,远程复制的资源库,等等。
- 在更改了`AcidFS`文件系统将自动与任何其他数据库利用了`transaction`包的同步和两阶段提交协议,如。 `ZODB`或`SQLAlchemy`。
要求:
- 在Python中
限制:
- 只有在`fcntl`是可用的平台支持。这不包括Microsoft Windows和可能是JVM为好。
- 在内核级锁是用来管理并发。这意味着`AcidFS`无法处理写入共享网络驱动器多个应用程序服务器。
- 的锁定使用的类型只同步'的AcidFS`其他实例。操纵`Git`存储库,而无需使用其他进程`AcidFS`可能导致竞争条件。使用`AcidFS`存储库应该只是为了避免不愉快的比赛条件,被写入了`AcidFS`。
评论没有发现