介绍

现在云厂商提供了对象存储,可以用作 CDN。

腾迅云 COS

文档

准备环境

coscmd 是腾迅云提供的命令行工具,必须使用 Python pip 安装。实测安装到单独的目录中无法运行,只能安装到默认位置。Windows 7 安装 coscmd 时,有一个依赖需要安装 Visual Studio 构建工具(Microsoft Visual C++ Build Tools)。这在实际使用时就很麻烦了,需要安装一个最新的 Visual Studio 或者手动选择其中的构建工具。

集成测试

使用 config 命令生成配置文件,再使用 upload 命令上传目录。按照文档编写命令,测试可用后,将其封装为 Python 脚本执行。

测试时需要关闭 Charles 之类的代理软件,否则会报错。

手动与自动

对于已手动上传的文件,coscmd 再次上传时会直接覆盖,而不会检查文件是否已上传。但是后续可以检查工具自己上传的文件是否已存在,猜测是只有工具在上传时会添加 md5 信息。

阿里云 OSS

文档

准备环境

ossutil 是阿里云提供的命令行工具,是一个单一的可执行文件,因此可以将其添加到版本控制中。

集成测试

使用 config 命令生成配置文件,再使用 sync 命令上传目录。

macOS 的程序需要在执行前手动添加可执行标记:chmod +x ossutilmac64

手动与自动

对于已手动上传的文件,ossutil 会像 rsync 一样检查是否上传过,只会上传变化或新增的。

总结

两个工具都分别在 Windows 与 macOS 使用,都对路径分隔符不敏感,配置好后可以直接用。

实际使用时感觉工具自身的依赖越少越好,最好只有一个可执行文件,这样便于使用。像依赖很多,且需要用户自行处理编译的工具,使用难度太大。