Child pages
  • Confluence - Speichernutzung und Anforderungen
Skip to end of metadata
Go to start of metadata

Das Management der Confluence-Performance und der Speichernutzung hängt immer von den verfügbaren Ressourcen ab. Confluence läuft schneller, wenn es viel Speicher für seine Caches hat, aber es läuft auch gut in Low-Memory-Umgebungen, wenn es entsprechend getunt ist. Hier finden Sie einige Tipps zur Speichernutzung von Confluence.

Den verfügbaren Speicher erhöhen

Siehe hierzu unsere Seite Erweiterung des Jira-Speichers. Diese Hinweise sind typisch für Anwendungs-Server, die in aller Regel für Confluence genutzt werden.

Eingebaute Datenbank

Die eingebaute HSQL-Datenbank, die mit Confluence ausgeliefert wird, hält alle Daten im Speicher, während der Confluence-Server läuft. Wenn Sie Speicherprobleme haben, sollten Sie Confluence auf ein externes relationales Datenbankmanagementsystem migrieren.

Caching

Per Voreinstellung behält Confluence große In-Memory-Caches von Daten, um die Reponsivität und die Nutzererlebnisse zu verbessern. Der Nachteil ist ein erhöhter Speicherbedarf aufgrund dieses Caches. Administratoren größerer Confluence-Instanzen können die Größe des Caches konfigurieren, um die Performance zu verbessern. Infos hierzu finden Sie auf unserer Confluence-Tuning-Seite.

E-Mail-Fehlerschleife

Confluence behält Kopien aller E-Mails, die nicht versendet werden konnten, in der Internal-Error-Schleife. Im Falle eines Problems wie einer fehlerhaften Netzwerkkonnektivität können die E-Mails in dieser Schleife manuell versendet werden, wenn das Problem gelöst ist. Unter bestimmten Voraussetzungen kann sich die E-Mail-Schleife mit großen Objekten füllen und wenn viele E-Mail-Fehler auftreten, kann dies die Speichernutzung beeinflussen.

Anhänge

Die Indizierung von Anhängen erfordert, dass diese in den Speicher geladen werden. Im Falle großer Attachments kann dies zu einer Belastung der Systemressourcen und zu einer fehlgeschlagenen Indizierung führen, weil der Anhang nicht komplett in den Speicher geladen werden konnte.

System-Backup und -Wiederherstellung

Der Backup- und Restore-Prozess von Confluence skaliert linear mit der Datenmenge. Bei großen Confluence-Instanzen kann dies enorme Auswirkungen haben, wenn das Datenaufkommen die Größe des erforderlichen Speichers übersteigt. Wenn Sie während des Restore-Prozesses einen OutOfMemoryError erhalten, ist dringend zu empfehlen, einer Production-Backup-Strategie zu folgen.

Wenn Sie während des Wiederherstellens eines Backups OutOfMemoryErrors bekommen und dieses Problem durch mehr Speicher beheben wollen, stellt sich die Frage, wie viel nötig ist. Einen guten Richtwert liefert ein Blick in die Datei entities.xml des Backups.

Diese Datei enthält alle Daten, die Confluence laden wird, folglich ist mindestens so viel Speicher nötig. Zusätzlich 64 bis 128 MB sind in der Regel ausreichend, damit Confluence genügend Speicher zum Laden hat.

Lange Antwortzeiten von Confluence bei einigen Aktionen

Eine bekannte Ursache willkürlicher Pausen in Confluence ist die Speicherbereinigung der JVM. Treten solche Pausen bei Ihnen auf, aktivieren Sie die Verbose Garbage Collection und beobachten Sie, wie lange Java braucht, um Speicher freizugeben. Wenn die willkürlichen Pausen zu den Zeiten passen, in denen Java seine Speicherbereinigung durchführt, verursacht diese das Problem.

Die Verbose Garbage Collection generiert Log-Informationen, die zeigen, wann Java den Speicher bereinigt, wie lange es dauert und wie viel Speicher freigegeben wurde.

Um dieses Logging zu aktivieren, starten Sie Confluence mit der Option

-XX:+PrintGCDetails -XX:+PrintGCTimeStamps -verbose:gc -Xloggc:gc.log. Replace gc.log

mit einem Absolutpfad auf eine gc.log-Datei.

Beispiel mit einem Windows-Dienst:

tomcat5 //US//Confluence ++JvmOptions="-XX:+PrintGCDetails -XX:+PrintGCTimeStamps -verbose:gc -Xloggc:c:\confluence\logs\gc.log"

Oder setzen Sie in bin/setenv.sh:

export CATALINA_OPTS="$CATALINA_OPTS -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -verbose:gc -Xloggc:${CATALINA_BASE}/logs/gc.log"

Wenn Sie bin/setenv.sh modifizieren, müssen Sie Confluence neu starten, damit die Änderungen wirksam werden.

Weitere Informationen zum Tuning der JVM und zur Minimierung der Zeit für die Handhabung der Speicherbereinigung bietet Sun an: http://java.sun.com/docs/hotspot/gc1.4.2/.