2012-05-11 36 views
3

我有一個多服務器設置,有兩個服務器通過Django提供動態請求,還有一個服務於Nginx的靜態/媒體文件服務器。應用程序和媒體服務器之間的文件傳輸

我的問題是:將上傳的媒體文件從django盒轉移到媒體服務器的推薦方式是什麼?

主要問題是通過管理員上傳的文件。所有用戶生成的內容都放入一個芹菜隊列中,該隊列使用sftp將文件拖出,並調整它們的大小。然而,應該在請求中處理在管理員中上傳的文件,以便在內容更改時準備就緒。

我已經嘗試了兩種選擇:

  • 使用Django,儲存的SFTP後端。這給了我底層paramiko的錯誤。
  • 使用NFS掛載,這給了我很多頭疼的權限。

那麼推薦的方法是什麼?或者其他人如何做到這一點? SFTP,SCP,SSHFS,NFS,CIFS,WebDav等?

+2

.... rsync .... –

+0

照顧詳細說明我如何完成我想用rsync?每分鐘都有一個cronjob rsync文件夾是不夠的,因爲這可能會顯示管理員發佈失敗的圖像一分鐘或更長時間(在傳輸後圖像也必須調整大小)。 – Tino

回答

0

上傳文件是否與任何模型相關?如果是這樣,請將存儲介質設置爲您的介質服務器,並且當您使用上傳的文件創建/保存在具有FileField的models.py中定義的對象時,它將自動將其保存到指定的存儲介質。這裏是文檔:https://docs.djangoproject.com/en/dev/topics/files/#the-built-in-filesystem-storage-class

+0

是的,我知道。這就是我正在使用的。關鍵是傳輸方法(sftp)不可靠工作。所以我想知道在這種情況下人們使用什麼。 – Tino

相關問題