Goodbye Grav – Hello Hugo

Ich stieg tief in die Grav Sources ein. Der Scanner der Directories und das Pages-Object sind die Hauptprobleme für langsame Response-Zeiten bei ein paar tausend Seiten.

Es werden alle Meta-Daten und Routes im Speicher gehalten. Das Problem sah ich damals auch bei VuePress und kannte das Grav Problem schon aus Github Kommentaren. Es hat sich seit 2016 aber eben nichts getan und wird sich wohl auch nicht so schnell was tun.

Ich gab PHP 2GB RAM, testete Redis, installierte dafür sogar die PHP Redis Lib aber es half alles nichts. Das Caching System ist nur für Twig und die Seitengenerierung brauchbar. Selbst mit Redis kam ich schnell auf 300+ms für die Response, was bei ca. 2K Seiten inakzeptabel ist. Der Router ist das Problem. Mein Blog hier in WordPress hat ja inzwischen 5000+ Einträge, bei Wikivoyage werden es sicher 100K mit den ganzen Sections und damit noch langsamer. Niemand braucht ein langsameres Wikitravel/Wikivoyage.

Das schöne Grav CMS ist damit unbrauchbar. Ich schrieb noch einen Verbesserungsvorschlag in die Github Roadmap, ob man nicht doch die Pages-Metadaten in SQLite auslagern könne, wie eben das bei TNTSearch so gut klappt. Es muss aber ein Resultat her und somit ging ich zurück zu Hugo, was in Sachen Geschwindigkeit der schnellste Statische-Seiten-Generator ist.

Die ganzen YAML-Frontmatter sind anders, die Templates auch sehr anders und es fehlt eben an diversen Funktionen, die Grav mit Twig zu schnellen Resultaten führten. Suche geht bei Hugo am einfachsten über Algolia, was aber außerhalb OpenSource und in meinen Dimensionen dann was kosten würde.

Heute stocherte ich viele Stunden in PHP-Sources herum, testete Objekt-Größen und schnelle Hacks. Ich habe weder Zeit noch Erfahrung, einfach mal SQLite-Abfragen statt großer Pages-Container in Grav einzubauen. Die Sources sind zwar sehr gut organisiert aber ich will weder Laravel, noch das ganze Zeug lernen. Alles nicht für das Endprodukt relevant. Am Ende muss ich die Suchseite mit TNTSearch wohl doch über Laravel machen und dahinter die statischen Seiten haben. Aber mal sehen. Erst mal muss überhaupt was gehen. Ansonsten geht auch Google Custom Search.

Ich baue nun am kube Theme weiter. Nicht ganz so einfach mit Golang Themes zu hantieren, wie mit dem Quark-Grav Theme. Hinter Hugo stecken aber mehr Entwickler als Grav. Das sieht alles schon sehr professionell aus. Redirects werden allerdings Probleme machen.

0 Responses to “Goodbye Grav – Hello Hugo”


Kommentare sind zur Zeit nicht möglich.
2018-06-25_15-45-49_IMG_20180625_154549.jpg
2018-06-25_15-45-49_IMG_20180625_154549.jpg
2018-06-25_15-46-22_IMG_20180625_154623.jpg
2018-06-25_15-46-22_IMG_20180625_154623.jpg
2018-06-25_15-49-34_P1230557.jpg
2018-06-25_15-49-34_P1230557.jpg
2018-06-25_15-52-52_IMG_20180625_155252.jpg
2018-06-25_15-52-52_IMG_20180625_155252.jpg