Beschränken der Speichernutzung von ImageMagick im AEM-DAM

In diesem Artikel erfahren Sie, wie Sie den Speicherverbrauch im ImageMagick-Konvertierungsprozess einschränken können. ImageMagick bietet mehrere Optionen zur Steuerung der Ressourcennutzung, einschließlich Speicher-, Zuordnungs-, Datenträger- und Dateibeschränkungen. Diese können mit der Option -limit festgelegt werden.

Beschreibung description

Umgebung

  • Adobe Experience Manager (AEM)

Problem/Symptome

Adobe Experience Managers DAM (Digital Asset Management) ImageMagick verbraucht viel Speicher. Wenn AI-Assets hochgeladen werden (MIME-Typ application/postscript), ruft der Aufnahme-Workflow den ImageMagick-Prozess auf, um Miniaturansichten zu generieren. ImageMagick verbraucht viel Speicher (z. B. mindestens 15 % des Speichers pro Prozess).

Wenn fünf Assets des Typs AI hochgeladen werden, verbraucht ImageMagick den gesamten Speicher im System und verringert die AEM.

Gibt es eine Möglichkeit, den Speicherverbrauch im ImageMagick-Konvertierungsprozess einzuschränken?

Auflösung resolution

ImageMagick bietet mehrere Optionen zur Steuerung der Ressourcennutzung, einschließlich Speicher-, Zuordnungs-, Datenträger- und Dateibeschränkungen. Diese können mit der Option -limit festgelegt werden.

Die Option -limit ermöglicht es Ihnen, verschiedene Ressourcenbeschränkungen für den Konvertierungsprozess festzulegen. Die Syntax für das Festlegen eines Speicherlimits lautet wie folgt:

convert -limit memory < value> input_image output_image

Dabei ist < Wert> die maximale Speicherkapazität (in Byte), die der Prozess verwenden darf. Sie können Suffixe wie MB für Megabyte oder GB für Gigabyte verwenden, um die Lesbarkeit zu verbessern.

Beispiel:

Um die Speichernutzung auf 500 MB zu begrenzen, führen Sie Folgendes aus:

convert -limit Speicher 500MB input_image.jpg output_image.jpg

Zusätzlich zum Arbeitsspeicher können Sie auch andere Ressourcen einschränken:

  • Zuordnung: Begrenzt die Nutzung der Speicherzuordnung.
  • Festplatte: Begrenzt den Speicherplatz.
  • Datei: Begrenzt die Anzahl der geöffneten Dateien.

Die Syntax ähnelt der Speicherbegrenzung:

convert -limit map 1GB -limit disk 2GB -limit Datei 50 input_image.jpg output_image.jpg

Sie können auch standardmäßige Ressourcenbeschränkungen festlegen, indem Sie die Richtlinienkonfigurationsdatei von ImageMagick ändern, die sich normalerweise je nach Version unter /etc/ImageMagick-6/policy.xml oder /etc/ImageMagick-7/policy.xml befindet.

Im Folgenden finden Sie ein Beispiel dafür, wie Sie diese Beschränkungen in der Konfigurationsdatei festlegen:

<policymap>
<policy domain="resource" name="memory" value="500MB"/>
<policy domain="resource" name="map" value="1GB"/>
<policy domain="resource" name="disk" value="2GB"/>
<policy domain="resource" name="file" value="50"/>
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f