作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我计划使用 sftp 协议(protocol)将大于 1Gb 的文件上传到 Azure Blob 存储容器。在这种情况下,Azure 是否保证原子文件上传,因此如果连接丢失,文件将为空或不存在?
作为实验,我尝试将文件上传到容器,如果连接丢失,则会在容器中创建长度为 0 的文件。但我还没有找到任何文档来解释这种行为。
最佳答案
不幸的是,Azure Blob 存储在使用 SFTP 协议(protocol)时不为原子文件上传提供任何保证。如果文件传输过程中连接丢失,则有可能仅将文件的一部分上传到 Blob 存储容器,从而导致文件大小小于原始文件。
此外,您还需要注意,恢复上传在 Azure Blob 存储的 SFTP 中也是不受支持的操作。 See here .
作为替代方案,为了确保文件上传是原子的,您可以考虑使用 Azure Blob 存储的 block Blob 上传机制。然后您可以利用Azure Blob Storage SDKs执行 blob 操作。这种机制允许您以小块的形式上传大文件,并将所有 block 作为单个事务提交。如果任何一个区 block 上传失败,整个交易将会回滚,并且文件不会被部分上传。希望这会有所帮助。
关于azure - Azure Blob 存储 sftp 访问是否保证原子上传?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75727469/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!