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"/>