Beschränken der Speicherbelegung von ImageMagick in AEM DAM
In diesem Artikel erfahren Sie, wie Sie die Speicherbelegung im ImageMagick-Konvertierungsprozess einschränken. ImageMagick bietet verschiedene Optionen zur Steuerung der Ressourcennutzung, einschließlich Speicher-, Karten-, 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 Manager 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 % Speicher pro Prozess).
Wenn fünf Assets vom Typ .ai hochgeladen werden, verbraucht ImageMagick den gesamten Speicher im System und reduziert AEM.
Gibt es eine Möglichkeit, den Speicherverbrauch im ImageMagick-Konvertierungsprozess zu beschränken?
Auflösung resolution
ImageMagick bietet verschiedene Optionen zur Steuerung der Ressourcennutzung, einschließlich Speicher-, Karten-, Datenträger- und Dateibeschränkungen. Diese können mit der Option -limit festgelegt werden.
Mit der Option -limit können Sie verschiedene Ressourcenbeschränkungen für den Konvertierungsprozess festlegen. Die Syntax zum Festlegen einer Speicherbegrenzung lautet wie folgt:
convert -limit memory <
value>
input_image output_image
Dabei ist *<
value>
*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 sie lesbarer zu machen.
Beispiel:
Um die Speicherbelegung auf 500 MB zu beschränken, würden Sie Folgendes ausführen:
convert -limit memory 500MB input_image.jpg output_image.jpg
Zusätzlich zum Speicher können Sie auch andere Ressourcen einschränken:
- Zuordnung: Beschränkt die Menge der Speicherzuordnungsnutzung.
- Datenträger: Beschränkt die Menge des Festplattenspeicherbedarfs.
- Datei: Beschränkt die Anzahl der geöffneten Dateien.
Die Syntax ähnelt der Speicherbegrenzung:
convert -limit map 1GB -limit disk 2GB -limit file 50 input_image.jpg output_image.jpg
Sie können auch Standardbeschränkungen für Ressourcen festlegen, indem Sie die Konfigurationsdatei für die ImageMagick-Richtlinie ändern, die sich je nach Version normalerweise unter /etc/ImageMagick-6/policy.xml oder /etc/ImageMagick-7/policy.xml befindet.
Im Folgenden finden Sie ein Beispiel, 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"/>