MyRapidi Interface: Runs und Statistics auf Geschwindigkeit optimiert
Wir haben im letzten Monat einige Zeit damit verbracht, die Nutzung und die Geschwindigkeit verschiedener Vorgänge in der Benutzeroberfläche von MyRapidi.com zu analysieren.
Einige unserer Kunden führen viele Transfers aus, und das sehr häufig. Dadurch entstehen sehr viele Einträge in der Log-Tabelle der zugehörigen Konfigurationsdatenbank. Wir hatten bereits einen Prozess, der alte Log-Einträge löscht, die nicht mehr relevant sind. Alle Fehlermeldungen werden zum Beispiel nach 3 Monaten gelöscht und alle Transfer-Fortschrittsmeldungen nach 7 Tagen.
Außerdem gibt es einen Prozess, der Statistikeinträge zu einem Monatseintrag pro Transfer und Quelle/Ziel zusammenfasst. Diese Komprimierung erfolgt derzeit für Statistiken, die älter als 1 Jahr sind.
Das hilft natürlich, die Zahl der Einträge im Log etwas zu begrenzen, aber bei einigen Services kommen wir trotzdem leicht auf 10 oder 20 Millionen Einträge im Log.
Wir haben in diesem Bereich mehreres optimiert: Wir haben die besten Indizes für diese Tabelle getestet und ausgewählt und die Abfragen so optimiert, dass sie mit diesen Indizes so schnell wie möglich arbeiten.
Hier ein paar Beispiele für die erreichten Geschwindigkeitsgewinne (die Zeiten gelten nur für sehr große Log-Datenbanken, kleinere profitieren aber relativ betrachtet ebenso):
- Das Öffnen der Runs-Seite ist von 60 Sekunden auf unter 1 Sekunde gesunken.
- Das Öffnen der Statistics-Seite mit der Statistik eines Monats für die größte Log-Tabelle ist von 9 Minuten auf 1 Minute gesunken (hier sind weitere Optimierungen geplant).
Insgesamt wirkt sich die Optimierung dieser besonders langsamen Abfragen sehr positiv auf die Reaktionsgeschwindigkeit von myrapidi.com aus, da normale Anfragen nicht länger hinter diesen langsamen Anfragen warten müssen.
Wie immer sind Kommentare mehr als willkommen!
Danke
Michael