美文网首页
django celery 上传处理大文件出错

django celery 上传处理大文件出错

作者: huarda | 来源:发表于2017-05-25 17:49 被阅读0次
    django 上传文件大小有个默认值 2.5M,

    小于2.5M时,会放在 InMemoryFileUploadFile(内存里面) 对象里面;
    大于2.5M时,会放在 TemporaryFileUploadFile (磁盘文件)里面

    而 celery 做pickle_dump时会去找file object的encoding
    这个encoding目前发现只能存在 InMemoryFileUploadFile 对象里面

    所以,我们只有将所有上传文件都放到 InMemoryFileUploadFile 里面,才能通过celery

    可以通过在settings里面设置

    FILE_UPLOAD_MAX_MEMORY_SIZE = 50*1024*1024
    

    来修改策略使所有50M以内的文件都存在 InMemoryFileUploadFile 里面

    这个设置谨慎使用,防止内存溢出!!!

    相关文章

      网友评论

          本文标题:django celery 上传处理大文件出错

          本文链接:https://www.haomeiwen.com/subject/obyzxxtx.html