Je nach Traffic- und Verarbeitungsanforderungen müssen Sie möglicherweise die Heap-Speichergröße oder die Größe der Klassenmetadaten für Ihre Knoten ändern, auf denen Java-basierte Private Cloud-Komponenten ausgeführt werden.
In diesem Abschnitt finden Sie die Standard- und empfohlenen Größen für den Java-Heap-Speicher sowie eine Anleitung zum Ändern der Standardwerte. Schließlich wird in diesem Abschnitt beschrieben, wie Sie andere JVM-Einstellungen mithilfe von Eigenschaftendateien ändern.
Standardmäßige und empfohlene Heap-Arbeitsspeichergrößen
In der folgenden Tabelle sind die Standard- und empfohlenen Java-Heap-Speichergrößen für Java-basierte Private Cloud-Komponenten aufgeführt:
Komponente | Name der Attributdatei | Standard Heap Size |
Empfohlen Heap-Größe |
---|---|---|---|
Laufzeit | |||
Cassandra | – | Automatisch konfiguriert1 | Automatisch konfiguriert1 |
Message Processor | message‑processor.properties |
512 MB | 3–6 GB2 |
Router | router.properties |
512 MB | 512 MB |
Analytics | |||
Postgres-Server | postgres‑server.properties |
512 MB | 512 MB |
Qpid-Server | qpid‑server.properties |
512 MB | 2 GB bis 4 GB |
Verwaltung | |||
Verwaltungsserver | management‑server.properties |
512 MB | 512 MB |
UI | ui.properties |
512 MB | 512 MB |
SymasLDAP | – | Native App3 | Native App3 |
Zookeeper | zookeeper.properties |
2.048 MB | 2.048 MB |
Hinweise | |||
1 Cassandra berechnet die maximale Heap-Größe dynamisch beim Start. Derzeit ist das die Hälfte des gesamten Systemspeichers, maximal jedoch 8.192 MB. Informationen zum Festlegen der Heap-Größe finden Sie unter Heap-Speichergröße ändern. |
|||
2 Für Message Processors empfiehlt Apigee, die Heap-Größe auf 3 bis 6 GB festzulegen. Erhöhen Sie die Heap-Größe nur nach Durchführung von Leistungstests über 6 GB hinaus.
Wenn die Heap-Nutzung während der Leistungstests nahe an das maximale Limit herankommt, erhöhen Sie das maximale Limit. Informationen zum Festlegen der Heap-Größe finden Sie unter Heap-Speichergröße ändern. |
|||
3 Nicht alle Private Cloud-Komponenten sind in Java implementiert. Da sie nicht auf Java basieren, haben Apps, die nativ auf der Hostplattform ausgeführt werden, keine konfigurierbaren Java-Heap-Größen. Stattdessen verlassen sie sich auf das Hostsystem für die Speicherverwaltung. |
Um zu ermitteln, wie viel Gesamtspeicher Apigee für die Zuweisung zu Ihren Java-basierten Komponenten auf einem Knoten empfiehlt, addieren Sie die oben aufgeführten Werte für jede Komponente auf diesem Knoten. Wenn auf Ihrem Knoten beispielsweise sowohl die Postgres- als auch die Qpid-Server gehostet werden, empfiehlt Apigee, dass die kombinierte Arbeitsspeicherzuweisung zwischen 2,5 GB und 4,5 GB liegt.
Eine Liste der erforderlichen Hardware (z. B. RAM) finden Sie unter Installationsanforderungen.
Heap-Speichergrößen ändern
Wenn Sie die Einstellungen für den Heapspeicher ändern möchten, bearbeiten Sie die Eigenschaftendatei für die Komponente. Bearbeiten Sie beispielsweise für den Message Processor die Datei /opt/apigee/customer/application/message-processor.properties
.
Wenn die Datei message-processor.properties
nicht vorhanden ist oder die entsprechende .properties
-Datei für eine Edge-Komponente nicht vorhanden ist, erstellen Sie sie und ändern Sie dann die Eigentümerschaft der Datei in den Nutzer „apigee“, wie im folgenden Beispiel gezeigt:
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
Wenn die Komponente auf mehreren Computern installiert ist, z. B. auf dem Message Processor, müssen Sie die Eigenschaftendatei auf allen Computern bearbeiten, auf denen die Komponente gehostet wird.
In der folgenden Tabelle sind die Attribute aufgeführt, die Sie bearbeiten können, um die Heap-Größen zu ändern:
Attribut | Beschreibung |
---|---|
bin_setenv_min_mem |
Die minimale Heap-Größe. Der Standardwert basiert auf den Werten, die unter Standard- und empfohlene Heap-Speichergrößen aufgeführt sind. Diese Einstellung entspricht der Java-Option |
bin_setenv_max_mem |
Die maximale Heap-Größe. Der Standardwert basiert auf den Werten, die unter Standard- und empfohlene Heap-Speichergrößen aufgeführt sind. Diese Einstellung entspricht der Java-Option |
bin_setenv_meta_space_size |
Die Standardgröße für Klassenmetadaten. Der Standardwert ist der Wert von Diese Einstellung entspricht der Java-Option |
Wenn Sie Heap-Größenattribute für einen Knoten festlegen, verwenden Sie das Suffix „m“ für Megabyte, wie im folgenden Beispiel gezeigt:
bin_setenv_min_mem=4500m bin_setenv_max_mem=4500m bin_setenv_meta_space_size=1024m
Nachdem Sie die Werte in der Eigenschaftendatei festgelegt haben, starten Sie die Komponente neu:
/opt/apigee/apigee-service/bin/apigee-service component restart
Beispiel:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
Andere JVM-Attribute ändern
Für Java-Einstellungen, die nicht durch die oben aufgeführten Attribute gesteuert werden, können Sie auch die folgenden Einstellungen in der entsprechenden Attributdatei für eine beliebige Edge-Komponente festlegen:
bin_setenv_ext_jvm_opts
: Legen Sie alle Java-Properties fest, die nicht durch andere Properties angegeben werden. Beispiel:bin_setenv_ext_jvm_opts=-XX:MaxGCPauseMillis=500
Verwenden Sie
bin_setenv_ext_jvm_opts
jedoch nicht, um-Xms
,-Xmx
oder-XX:MetaspaceSize
festzulegen, da diese Werte durch die oben aufgeführten Eigenschaften gesteuert werden.
Weitere Tipps zum Konfigurieren des Arbeitsspeichers für Private Cloud-Komponenten finden Sie in diesem Artikel in den Edge-Foren.