当前位置: 首页 > 面试题库 >

使用Python / Django上传大文件

蒙奇
2023-03-14
问题内容

我想知道通过使用Django /
Python的网络应用上传大小约为4GB的文件是否有任何后果?我记得在过去使用Java进行流式上传是首选方法,但是今天还是这样吗?或者使用Django /
Python这样做绝对安全吗?


问题答案:

Django默认情况下会将上传的文件数据小于2.5MB放入内存中。较大的内容将被写入服务器/tmp目录,然后在传输完成时复制到整个服务器。可以自定义Django的许多文件上传设置,有关详细信息,请参见文档。您还可以自定义文件处理,当然您会想要这样做。

在考虑任何技术限制之前,使用浏览器上传如此大的文件将给用户带来非常糟糕的体验。没有关于传输进行情况的反馈(尽管google
chrome确实将上传状态显示为百分比),也无法暂停或继续传输。

您还可能在服务器上遇到问题。除了每个线程都要花费很长时间来处理流数据之外,您还需要系统花费一些时间将结果文件从其复制/tmp到正确的位置。

除非您非常有信心可以预见服务器上载可能出现的任何问题,否则我建议这不是一个好主意。通过Google很难找到关于此的任何信息,而且似乎有很多热门文章描述了大文件上传的问题。

尽管Django在技术上能够接收如此大的上传文件,但非常糟糕的用户体验和技术难题意味着这可能不是最佳方法。您是否考虑过使用专用软件来处理文件传输?



 类似资料:
  • 问题内容: 我在Django应用中有一个表单,用户可以在其中上传文件。 如何设置上传文件大小的限制,以便如果用户上传的文件大于我的限制,则该表格将无效并且会引发错误? 问题答案: 此代码可能会帮助:

  • 主要内容:上传图片对于Web应用程序,以便能够上传文件(资料图片,歌曲,PDF格式,文字......),它通常是很有用的。让我们在这一节中来讨论如何使用Django上传文件。 上传图片 在开始开发图片上传之前,请确保Python的图像库(PIL)已经安装。现在来说明上传图片,让我们创建一个配置文件格式,在 myapp/forms.py - 正如你所看到的,这里的主要区别仅仅是 forms.ImageField。Im

  • 本文向大家介绍python+django快速实现文件上传,包括了python+django快速实现文件上传的使用技巧和注意事项,需要的朋友参考一下 对于web开来说,用户登陆、注册、文件上传等是最基础的功能,针对不同的web框架,相关的文章非常多,但搜索之后发现大多都不具有完整性,对于想学习web开发的新手来说就没办法一步一步的操作练习;对于web应用来说,包括数据库的创建,前端页面的开发,以及中

  • 问题内容: 我想允许将非常大的文件上传到我们的PHP应用程序中(数百兆-8演出)。但是,这有两个问题。 浏览器: HTML上载的反馈很糟糕,我们需要轮询进度(这有点愚蠢)或根本不显示反馈 Flash Uploader在开始上传之前将整个文件放入内存 服务器: PHP强制我们设置post_max_size,这可能导致容易利用的DOS攻击。我不想全局设置此设置。 服务器还要求POST变量中包含一些其他

  • 有没有人可以帮助我如何在django rest api中使用POST方法上传文件,例如当我启动时 我是Django REST API的新手,我阅读了文档http://www.django-rest-framework.org/api-guide/parsers.html#FileuploadParser,但仍然不知道如何实现它

  • 使用Django REST框架的通用,我创建了一个我认为应该能够通过POST请求上传照片的终端。 到目前为止,我尝试使用Android和curl将文件发布到此endpoint,并观察到相同的行为:创建了一条新记录,但没有附加该文件。因为该文件是必填字段,服务器然后返回500错误。 这个问题看起来很相似,但是他没有使用REST框架的通用视图,我不知道为什么...我想在适当的时候利用它们。 这是我的D