Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Slow response in web app

Offen
#326 8 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
35/100
Issue-Typ
Bug
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
postgresql, python

Rechercherichtung

Beginne beim Abfragepfad für allgemeine Statistiken auf der Startseite und untersuche dessen Lesezugriffe auf die Tabellen run, resource_tags und resource. Reproduziere die Verlangsamung mit vielen Services und einer Historie von 90 Tagen, verwende anschließend eine Datenbankabfrageanalyse, um den Engpass zu identifizieren, und verifiziere, dass die Web-App erfolgreich geladen wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

bug

Describe the bug
The application is really slow, or even stops working, if there is a high number of services configured and / or there are too many historical records in the database.

To Reproduce
Publish a high number of services (ie. 800) , keep 90 days of history and check services every hour.
Looks like the home page tries to load too many records from the database trying to show the general stats of the instance and the web app fails.

Expected Behavior
The web app loads successfully.

Suggestion
In addition to reduce the number of days of history and frequency of checks it could help to include some indexes in the database.

For example:


CREATE INDEX run_res_ident_idx  
ON public.run  (resource_identifier);

CREATE INDEX res_tag_res_ident_idx  
ON public.resource_tags  (resource_identifier);

CREATE INDEX res_tag_tag_idx  
ON public.resource_tags  (tag_id);

CREATE INDEX resource_res_type_idx  
ON public.resource  (resource_type);

Vorherrschende Sprache
Python
Sterne
93
Forks
77
Ø Merge
27 Min.
Gemergte PRs (30 T.)
1

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus geopython/GeoHealthCheck

Alle Issues in geopython/GeoHealthCheck

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.