在我的应用程序中,我正在处理上传真正大的图像文件。他们将存储在远程服务器上,所以从我所能学到的东西中我需要编写一些定制的存储系统(可能使用python的poster模块)。由于尺寸的原因,我希望直接将文件发送到媒体服务器,而不将它们存储在内存中(“海报”允许)。但所有上传的文件都由UploadHandler类处理,这会强制文件以某种方式(文件,temp或内存)本地存储。那么我怎样才能解决这个问题?将文件从表单直接发送到远程服务器
1
A
回答
0
根据docs,UploadedFile类应该有一个返回生成器的方法chunks()
。块大小可配置(默认为2.5 MB)。所以,你可以做这样的事情(从文档复制):
destination = open('some/file/name.txt', 'wb+')
for chunk in f.chunks():
destination.write(chunk)
destination.close()
这将陆续读一个块到内存并将其写入文件。 (所以在内存中只有一个块)。您可能想要将open()的路径更改为NFS卷,然后每次write()调用只会将当前块发送到NFS。 (NFS导出所有文件操作,如open/write/read/seek/close as RPC)。桑巴工作原理类似。
或者,您也可以通过在媒体服务器上运行另一个服务来实现这种机制,该服务提供了将文件追加到文件的方法。 (无论如何,在我看来,使用NFS或Samba将是更好的选择)。
0
相关问题
- 1. 发送表单到远程服务器
- 2. Rails:如何将文件从S3发送到远程服务器
- 3. 如何将文件从AJAX直接发送到远程FTP?
- 4. 将文件直接上传到远程服务器
- 5. php使用cURL将文件发送到远程服务器
- 6. 直接从eclipse发布.war到远程Web服务器(FTP,SSH)
- 7. cURL发送表单,但远程服务器没有发送POST
- 8. 如何将文件从远程服务器直接上传到Amazon S3?
- 9. 直接发送请求到服务器
- 10. Android应用程序发送文件到远程服务器
- 11. 将文件从一台远程服务器发布到另一台服务器
- 12. 发送查询到远程服务器
- 13. 将图像从远程服务器发送到手机
- 14. 将JMX数据发送到远程服务器(JMX转发器?)
- 15. 将邮件发送到远程服务器在PHP
- 16. Ruby将文件发送到服务器
- 17. SILVERLIGHT将文件发送到服务器
- 18. 将MP3文件发送到服务器
- 19. 通过引用到远程服务器发送文件?
- 20. 如何直接使用push直接推送到远程服务器?
- 21. 将数据从服务器发送到远程套接字的问题
- 22. 套接字,从服务器发送事件到服务器
- 23. 如何将文件从Linux(informatica服务器)发送到文件服务器(windows)
- 24. 从Windows机器发送文件到Linux远程服务器java代码
- 25. 安卓:发送文件到服务器:PHP接收服务器
- 26. 从远程服务器到本地服务器的Sftp文件
- 27. 从远程服务器连接到猪
- 28. 'System.Net.Mail.SmtpException:从远程邮件服务器发送邮件失败
- 29. 将文件发送到服务器 - 不保存在服务器
- 30. 推送到远程服务器GIT exlude文件夹/文件
但我仍然会发送这个数据后运行存储。或者我错了? – mizou 2010-10-13 23:06:33