直接从Django中的POST请求流式传输非常大的json

时间:2018-04-13 18:31:33

标签: json django python-3.x django-rest-framework streaming

我正在寻找有效的方法来处理对Django 2.0服务器(使用Django REST Framework)的请求中非常大的json文件(即可能大小为几GB,相当于几百万个json对象)。每行需要经过一些处理,然后保存到数据库。

迄今为止最大的痛点是文件本身的内存消耗,并且在Django中处理数据时内存消耗仍在稳步增加,而无法手动释放所使用的内存。

是否有推荐的方法在Django应用程序的请求中处理非常大的json文件,而不会屠宰内存消耗?可以结合压缩(gzip)?我正在考虑将json作为常规文件上传到API,将其传输到磁盘,然后使用ijson或类似文件从磁盘上的文件流式传输?有更简单的方法吗?

0 个答案:

没有答案