/ / Django: Hochladen von Dateien auf s3 mit boto - Django, Bildverarbeitung, amazon-s3, boto

Django: Datei-Upload nach S3 mit Boto - Django, Bildverarbeitung, Amazon-S3, Boto

ich versuche zu upload images (durchschnittliche Größe 12 MB) auf meinem Server (Django mit PIL), dann bearbeite ich sie, um Bilder zu verkleinern und Thumbnails zu erstellen.

Während dieses Vorgangs speichere ich keine Bilder auf der lokalen Festplatte des Servers, sondern verwende In Memory file und verarbeite es. Ich lade Bilder mit boto auf s3 hoch und habe das Originalbild, das skalierte Bild und die Miniaturansicht, die nacheinander hochgeladen werden sollen (alle diese drei sind noch in meinem Speicher vorhanden).

Dieser Vorgang ist sehr zeitaufwendig und manchmal geht auf dem von mir verwendeten Server (Digital Ocean 512 MB RAM) der Speicher voll.

Kann ich wissen, ob es eine bessere Möglichkeit zum Hochladen von Bildern gibt?

Jede Hilfe wird sehr geschätzt. Danke im Voraus.

Antworten:

1 für die Antwort № 1

Ich habe nicht viel mit Django & Boto gearbeitet, aber Sie können ein paar Vorschläge versuchen:

  • Aktualisieren Sie Ihren Server. Wenn Sie so viele große Dateien verarbeiten möchten, benötigt die Bildverarbeitung viel Speicher.
  • Sie können versuchen, Warteschlangen zu implementieren (d. H. Wann immer Sie einen Upload erhalten Anfrage und Datei sind größer als in der Warteschlange und werden nach dem aktuellen Stand verarbeitet Vorgang ist abgeschlossen). Sie können verwenden Sellerie für diese Arbeit.
  • Wenn Sie nicht so viele große Dateien benötigen, können Sie das Bild verkleinern Größe auf Client-Seite zuerst und übergeben Sie es dann an den Server.