我正在使用适用于.net的AWSSDK与我的Amazon s3帐户存储桶进行交互。现在我发现tntDrive将该存储桶安装为本地驱动器,以便与同一s3存储桶进行交互。告诉我与Amazon S3存储桶进行交互的最佳方法。
Amazon S3是对象存储,而不是文件系统。不建议将Amazon S3存储桶安装为驱动器或文件系统。
例如,在普通磁盘文件系统上,可以修改文件中的单个字节。但是,在修改S3对象中的单个字节时,必须将整个对象重新发送到S3。
是安装在一个文件系统的S3存储公用设施(如s3fs,tntdrive,云莓驱动器)的模拟文件系统,必须做大量的工作在后台保持兼容。它可能会起作用,并且可能使事情看起来更简单,但同时也增加了其他复杂程度,可能会导致系统出现问题。如果您打算运行一个高度可靠的生产系统,建议不要使用这样的实用程序 -但选择是您自己选择。
适用于.NET的AWS开发工具包提供了许多用于访问Amazon S3的功能,并在发生故障时完全控制安全性和详细的错误代码。使用已安装的驱动器的安全性较低(在安装驱动器时定义安全性,而不是在每次调用S3时定义),并且如果事情失败,将不会返回S3特定的错误消息。
您可能会考虑使用的中间选项是AWS命令行界面(CLI)(适用于Windows,Mac,Linux)。它提供了一个命令行界面来与AWS交互。aws s3 sync
命令非常有用,它可以在本地目录和S3之间同步文件。