Webseite teilweise langsam

Issue #116 resolved
Alexander Eifler created an issue

Teilweise braucht die Webseite etwas länger zu laden. Das könnte an den MD5 und SHA1-Summen-Berechnungen liegen, die teilweise live berechnet werden.

Comments (19)

  1. Alexander Eifler reporter

    Falsche Cache-Einstellungen sorgen dafür, dass Download-Content immer wieder neu heruntergeladen wird... trotz Etag.

  2. Alexander Eifler reporter

    Nee ;) sinnvoll sind die nicht. ich hatte bislang noch keine Datenstruktur angelegt, um die hashes der verkleinerten Bilder zu speichern. daran hatte ich früher nicht gedacht ;)

  3. Alexander Eifler reporter

    Nee ;) sinnvoll sind die nicht. ich hatte bislang noch keine Datenstruktur angelegt, um die hashes der verkleinerten Bilder zu speichern. daran hatte ich früher nicht gedacht ;)

  4. Alexander Eifler reporter

    Live-Berechnungen von md5 und sha1 bei verkleinerten Bildern entfernt

    Wird nun einmalig in eine Datenbank geschrieben. Hashergebnisse und Dateigrößen können nun von dort ausgelesen werden

    see #116

    → <<cset d8f490a1e40e>>

  5. Alexander Eifler reporter

    Das mit den Etag-Headern ist so nicht richtig. Sie sind eine zusätzliche Hilfe, sollte der Cache invalide sein und der Browser der Meinung sein, eine Datei neu laden zu müssen, ist der Etag-Header ja doch sehr hilfreich, da der Server dem Browser mitteilen kann ohne die Datei zu senden, dass die lokal gespeicherte Datei noch gültig ist. Das wird auch seitens Google usw. empfohlen: https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/http-caching?hl=de

    Mit dem Caching hatte ich mich erst auf die Server-Einstellungen verlassen. Die sind aktuell aber echt mist und machen nur für reine HTML-Inhalte sinn. Alles was statisch ist, wird nicht gecached, was mist ist. Da werde ich nochmal umfangreich Verbesserungen einbauen müssen.

  6. Alexander Eifler reporter

    Selbstgeschriebene CSS- und JS-Dateien werden automatisch geminified

    • Requests wurden minimiert, weil es nur noch eine CSS-Datei und eine JS-Datei gibt
    • Lässt sich zukünftig besser cachen

    see #116

    → <<cset 529944343bbf>>

  7. Alexander Eifler reporter

    Cache-Verhalten verbessert

    • Fehlerhafte ETag-Validierung verbessert
    • Cache-Verhalten für statische Dateien optimiert. Generell werden diese Daten nun 1 Tag vorgehalten. Feinere Einstellungen folgen später

    see #116

    → <<cset a052616b0f16>>

  8. Alexander Eifler reporter

    So, das Meiste sollte erst einmal getan sein. Es gibt noch weitere kleine Wechselwirkungen, die ich noch ausmerzen werde. Auch die Antwortzeit des Servers gefällt mir noch nicht so wirklich...

  9. Jan Brohl

    Die Überprüfung der Gültigkeit geht übrigens auch mit if modified since und ich finde das semantisch schöner als etags aber ich implementiere das ja auch nicht. etags haben meiner meinung nach nur dann einen vorteil wenn man keine vernünftige uhr im server hat.

  10. Alexander Eifler reporter

    Etags sind ja gerade dafür sinnvoll. Folgendes Beispiel: Ich hab eine Datei, der ich gesagt habe, dass ihre Gültigkeit ist 1 Woche. Dann wird der Browser in einer Woche nachfragen, ob sich die Datei geändert hat. Beim Etag kann ich als Response nun ein 304 Not Modified schicken. Das könnte ich mit If-Modified-Since ebenfalls. Nur kann ich aber mittels des gesendeten Etags überprüfen, ob die Version, die der Browser im Cache hat auch die ist, die da stehen soll, da er mir einen If-None-Match-Header schickt.

  11. Alexander Eifler reporter

    Asynchronität wieder entfernt. Gab zu viele Bugs dadurch. Der langfristige Versuch sollte zumindest für die Mobilansicht sein, Javascript noch weiter zu minimieren.

  12. Log in to comment