我目前正在使用Amazon S3在网站上托管所有静态内容。该站点有很多静态文件,因此我需要一种自动方式将本地主机上的文件与远程文件同步。我目前使用s3cmd的同步功能执行此操作,该功能非常好。每当我运行我的部署脚本时,只有已更改的文件才会上载,并且所有已删除的文件也会在S3中删除。

我想尝试Rackspace CloudFiles;但是,我似乎找不到任何提供相同功能的东西。除了编写自己的同步实用程序外,是否还能在Rackspace Cloud Files上完成此操作?它需要具有命令行界面并可以在OS X上运行。

最佳答案

Rackspace Cloud的pyrax SDK具有听起来像您要找的云文件的sync_folder_to_container()方法。它将仅上传新的/更改的文件,并且可以选择从云中删除在本地删除的文件。

就初始上传而言,我通常使用eventlet以尽可能异步的方式上传文件。总的时间仍然会受到您的上传速度的限制(我不知道有什么SDK可以解决这个问题),但是非阻塞代码无疑会提高整体性能。

如果还有其他问题,请随时在GitHub页面上提问。

埃德·叶普

08-16 07:03