Wenn die APEX-Anwendung langsam geworden ist

APEX-Anwendung wird immer langsamer? Wir messen zuerst, wo die Zeit tatsächlich verloren geht — und optimieren dann gezielt statt auf Verdacht.

Am Anfang war sie schnell. Inzwischen dauert der Aufruf einer Übersicht mehrere Sekunden, ein Bericht wird von den Anwendern nur noch morgens vor der Arbeit gestartet, und in Spitzenzeiten hört man den Satz: „Das System ist wieder langsam."

Meist ist nicht die Anwendung schlechter geworden, sondern die Datenmenge größer — bis zu dem Punkt, an dem eine Abfrage nicht mehr funktioniert, die jahrelang unauffällig war.

Zuerst messen, dann ändern

Performance-Arbeit ohne Messung ist Raten mit Rechnung. Wir fangen deshalb immer bei der Frage an, wo die Zeit tatsächlich bleibt:

Erst danach entsteht eine Liste von Maßnahmen — nach erwartetem Effekt und Aufwand sortiert, damit Sie entscheiden können, was sich lohnt.

Was in der Praxis die Zeit kostet

Die Ursachen wiederholen sich, in gewachsenen Anwendungen fast unabhängig von der Branche:

Was Sie danach in der Hand haben

Sie erhalten eine Bestandsaufnahme, die benennt, welche Seiten wie viel Zeit kosten, worin die Ursache liegt und welche Maßnahme welchen Effekt hätte. Was umgesetzt wird, entscheiden Sie — durch uns, durch Ihr eigenes Team oder gemeinsam.

Dieser letzte Punkt ist uns wichtig: Performance-Arbeit ist der Bereich, in dem sich Wissen am schnellsten überträgt. Wenn Ihre Entwickler dabei sind, wenn ein Ausführungsplan gelesen und ein Statement umgeschrieben wird, erkennen sie das Muster beim nächsten Mal selbst. Wir arbeiten deshalb gern mit Ihrem Team statt an ihm vorbei.

Eine in Oracle APEX entwickelte Stundenabrechnung mit Auswertungen und Diagrammen

Aus über 25 Jahren Arbeit mit Oracle-Datenbanken kennen wir beide Seiten — die APEX-Ebene und das, was darunter in der Datenbank passiert. Erfahrungsgemäß liegt die Ursache häufiger unten als oben.

Wenn die Architektur die Bremse ist

Es gibt Fälle, in denen einzelne Optimierungen nicht reichen: wenn ein Datenmodell für einen anderen Zweck gebaut wurde, wenn Auswertung und Erfassung sich gegenseitig blockieren, wenn eine Anwendung Aufgaben übernommen hat, für die sie nie gedacht war. Dann ist Tuning nur eine Verzögerung des eigentlichen Problems.

In dieser Lage sagen wir es deutlich und rechnen beide Wege vor: weiter optimieren oder den betroffenen Teil neu bauen. Was von beidem sinnvoll ist, hängt davon ab, wie lange die Anwendung noch tragen soll — nicht davon, was für uns der größere Auftrag wäre.


Ihr nächster Schritt

Sagen Sie uns, welche Seite oder welcher Bericht am meisten stört und seit wann. Häufig lässt sich schon im Erstgespräch einschätzen, ob es sich um einen einzelnen Engpass oder ein grundsätzliches Thema handelt.

Direkt Termin vereinbaren oder

Häufige Fragen zu Performance-Problemen

Woran liegt es meistens, wenn eine APEX-Anwendung langsam ist? Fast immer an Datenmengen, die beim Bau der Anwendung niemand erwartet hat, und an SQL, das damit nicht umgehen kann: fehlende Indizes, Abfragen über zu viele Zeilen, Berichte ohne sinnvolle Vorfilterung, Logik in Schleifen statt im Statement. Deutlich seltener ist die APEX-Ebene selbst schuld — und noch seltener die Hardware, obwohl sie oft zuerst verdächtigt wird.

Wie finden Sie heraus, wo die Zeit verloren geht? Mit Messung statt Vermutung: APEX-Aktivitätsprotokolle zeigen, welche Seiten wie lange brauchen und wie oft sie aufgerufen werden. Für die auffälligen Seiten sehen wir uns die tatsächlich ausgeführten Statements und ihre Ausführungspläne an. Erst wenn klar ist, wo die Zeit bleibt, wird etwas geändert.

Müssen Sie dafür die Anwendung umbauen? In der Regel nicht. Die meisten Verbesserungen entstehen an einzelnen Stellen: ein Index, eine umgeschriebene Abfrage, ein Bericht, der nicht mehr ungefiltert alles lädt, eine teure Berechnung, die nicht bei jedem Seitenaufruf neu läuft. Ein Umbau ist erst nötig, wenn die Architektur selbst nicht trägt — und dann sagen wir das, statt an Symptomen weiterzuarbeiten.

Können Sie garantieren, dass es danach schneller ist? Eine Zahl garantieren wir nicht, bevor wir gemessen haben. Was wir zusagen können: Nach der Analyse wissen Sie, welche Stellen wie viel Zeit kosten, welche Maßnahme welchen Effekt hätte und was davon Aufwand lohnt. Es kommt vor, dass die ehrliche Antwort lautet: Die größte Bremse liegt außerhalb der Anwendung — etwa in einem Fremdsystem, das auf Anfragen wartet.

Was ist, wenn die Anwendung nur zu bestimmten Zeiten langsam ist? Das ist ein wichtiger Hinweis und meist der ergiebigste Fall: Lastspitzen, nächtliche Batch-Läufe, ein Monatsabschluss, gleichzeitige Reports. Solche Muster sind in den Protokollen sichtbar, wenn man über einen längeren Zeitraum hinsieht statt auf einen Moment.

Weiter: Support und Übernahme · Migration von Oracle Forms · Neuentwicklung · zurück zur Übersicht Oracle APEX.

← Zurück zur Startseite