Grundsätzliche Performance-Faktoren

Das Systems-Team hat es bestimmt schon erlebt: Ein Kunde kommt und fragt: "Wie viele Nutzer und Bereiche kann ich in meinem Confluence haben, ehe es einknickt?" "Wie viele User, Projekte und Vorgänge verkraftet Jira ohne Probleme?" - Was antwortet ihr dem? Welche Faktoren beeinflussen also die Performance?

  • Wir sehen Applikationen, die mit mehr als 10.000 Usern betrieben werden, hier sollte man dann aber nochmal einen zweiten Blick auf die Plattform und die Konfiguration werfen
  • Wie viele Projekte? Wie viele Vorgänge?
  • kein Limit - wichtig ist allein die Dimensionierung der Hardware
  • dazu kommen wir später noch einmal
  • andere Applikationen, die den Betrieb der Applikation stören könnten (z.B. Antivirus)

Benchmarking

Ein Kunde ist sich nicht sicher, ob sein System objektiv gut oder weniger gut performt, weil ihm z.B. Vergleichsdaten fehlen. Hat der Möglichkeiten, die Performance objektiv zu testen? Gibt es z.B. Tools für Benchmark-Tests?

  • Java Management Extensions
  • Ausgabe von JMX nach z.B. collectd (passive Monitoring Umgebung, möglichst hohe Auflösung)
  • Achtung: Kann IO stark erhöhen

Speicherbereinigung

Tuning der Carbage Collection - was ist damit für die Performance rauszuholen und wie funktioniert das grundsätzlich?

  • Grundsätzliche Empfehlung: HeapSpace erhöhen, minimaler und maximaler HeapSpace auf dem gleichen Wert
  • Nutzung der Instanzen stark unterschiedlich
  • wichtig ist vor allem die Auswertung von Daten aus dem Livebetrieb

Data Center

Sind mit einem Umstieg auf das Data-Center-Deployment von Confluence und Jira Performance-Probleme Geschichte?

  • durch verschiedene Nodes gute Verteilung der Last
  • grundsätzlich empfehlenswert, auf Ökonomie achten
  • Beratung dazu gerne in einem längeren, persönlichen Telefonat

Hardware

Gibt es bestimmte grundsätzliche Hardware-Empfehlungen im Hinblick auf die Performance?

  • Empfehlungen in 10.000 User Umgebungen: 16 vCPU, 24 GB RAM, SSD / 15k Platte

Datenbanken?

Und wie sieht es bei der Datenbank aus? Gibt es hier Unterschiede?

  • grundsätzliche Empfehlung ist PostgreSQL
  • am besten von Atlassian getestet
  • wird in unseren Installationen verwendet
  • weniger Fehleranfällig als z.B. MySQL, im Zusammenspiel mit der Applikation performanter als andere Datenbanken
  • Oracle kann auch sehr gut performen, hier kommt es vor allem auf die Datenbankadmins an

Plugins als Performance-Fresser?

Atlassian verifiziert Plugins seit einiger Zeit offiziell. Kann ich mich als Kunde darauf verlassen, dass Add-ons vernünftig getestet sind und mir nicht mein ganzes System plötzlich in die Knie zwingen?

  • jedes Plugin braucht für sich einen gewissen Speicherbereich
  • viele Plugins sind schlecht geschrieben, können Stabilität und Performance der Anwendung verringern
  • "unsupported" Plugins in Enterprise-Instanzen grundsätzlich nicht zu empfehlen (versteht sich hoffentlich von selbst)
  • nur weil ein Plugin sehr gut getestet ist, hat es nicht gleichzeitig einen niedrigen Speicherbedarf, ein Extrembeispiel ist hier Jira Agile - mit 1GB mehr HeapSpace sollte man hier direkt rechnen

Monitoring

Welche Faktoren gehören zu einem systematischen Monitoring von Confluence und Jira?

  • welches Monitoring bisher im Einsatz?!
  • idealerweile aktiv & passiv
  • aktives Monitoring
    • String Check für die Startseite der Applikation
    • Prozesse: JAVA / ReverseProxy / Datenbank
  • passives Monitoring
    • Verwendung des HeapSpace
    • GarbageCollection (wie häufig, wann)
    • ReverseProxy (wie viele Verbindungen)
  • PIWIK
    • Aggregation von Nutzer-Aufkommen, -Verhalten mit Daten aus passivem Monitoring

Grundsätzliche Tipps

Fünf Tipps in aller Kürze: worauf besonders achten?

  • Antivirus für Indexing- / Datenbank-Bereiche ausschließen
  • ausreichend dimensionieren heißt vor allem: auch CPU-Ressourcen (auch wenn in 99% der Zeit nicht genutzt, für StopTheWorld Events / GarbageCollection wichtig) und Festplattengeschwindigkeit erhöhen
  • auf die Verwendung von sinnvollen und getesteten Plugins achten (gerne bei den Kollegen aus den Consulting-Teams nachfragen)
  • Monitoring, Monitoring, Monitoring
  • aus den beim Monitoring gesammelten Daten auch wirklich etwas machen 
  • Keine Stichwörter

Dieser Inhalt wurde zuletzt am 15.09.2017 aktualisiert.

Der Inhalt auf dieser Seite ist schon seit einer Weile nicht mehr aktualisiert worden. Das muss kein Nachteil sein. Oft überdauern unsere Seiten Jahre, ohne wirklich unnütz zu werden. Einfach auf diesen Link klicken, wenn wir die Seite mal wieder aktualisieren sollten. Alte Inhalte können falsch, irreführend oder überholt sein. Bitte nutzen Sie das Formular oder den Live-Chat auf dieser Seite oder kontaktieren Sie uns via E-Mail unter content@seibert.group, wenn Sie Zweifel, Fragen, Anregungen oder Änderungswünsche haben.