Django api для загрузки очень медленный

Мой django api очень медленный при загрузке файлов на сервер, но очень быстрый при использовании его на localhost. api должен получать файлы и сохранять их на диск.

Я ожидаю загруженные файлы размером от 70mb до примерно 600mb и сохраняю их в хранилище. Файлы представляют собой бинарные файлы с расширением .svo, созданные камерой stereolabs zed. Запуск этой программы на localhost происходит очень быстро, но когда я развертываю ее на сервере, она становится невероятно медленной. Скорость моего интернета составляет около 50 мбит/с, а тестовый файл, который я использую, имеет размер всего 69 мб. Загрузка файла занимает более 24 минут, что неприемлемо.

В чем может быть проблема, почему загрузка на сервер происходит так медленно.

Это мой views.py запрос на создание каталога и его сохранение

import os
import pathlib
# external libraries
from django.http import JsonResponse
from rest_framework.views import APIView
from django.core.files.storage import FileSystemStorage
# environment variables
from keys import USER_DIR # this is just a directory from .env


class SaveRosBag(APIView):

    def post(self, request, *args, **kwargs):

        # integer_key & timestamp
        integer_key = self.kwargs['integer_key']
        timestamp = self.kwargs['timestamp']

        # required files
        if "zed_svo" in self.request.FILES:
            zed_svo = self.request.FILES["zed_svo"]
        else:
            return JsonResponse({"error":"KeyError [zed_svo]"})

        pathlib.Path(os.path.join(USER_DIR,str(integer_key),str(timestamp))).mkdir(parents=True,exist_ok=True)

        ride_folder = os.path.join(USER_DIR,str(integer_key),str(timestamp))

        save_zed_svo = FileSystemStorage(location=ride_folder)
        save_zed_svo.save(zed_svo.name, zed_svo)

        return JsonResponse({"message":"file uploaded and saved successful"})

это urls.py

from django.urls import path
from myAPI.views import SaveFile

urlpatterns = [
    path('savefile/<int:integer_key>/<int:timestamp>', SaveFile.as_view(), name='Save File')
]

другой urls.py

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('jetson/', include('myAPI.urls')),
]
Вернуться на верх