【发布时间】:2018-08-25 16:08:13
【问题描述】:
我有一个大文件(几 GB),我想更新其中的一小部分(用新值覆盖一些字节)。这必须以原子方式完成(要么操作成功,要么文件保持不变)。我该怎么做?
目的是将进度信息存储在需要大量时间来生成/上传的文件中(它可以在远程文件系统上)。可能有时我需要在文件的不同位置写入(并一次提交所有更改),但如果需要,我可以重写整个索引,这是一个连续的块,与文件的其余部分相比相对较小.在任何给定时间,只有一个进程和线程写入文件。
【问题讨论】:
-
您计划使用 node.js 并期望对远程文件系统进行原子更新,直至并包括“在文件的不同位置写入(并一次提交所有更改)”?即使对于本地文件系统,node.js 也无法提供those kinds of guarantees。
-
你能在所有写入之前完成所有读取吗?
标签: node.js linux filesystems sshfs