diff options
author | Caoimhe Chaos <caoimhechaos@protonmail.com> | 2020-02-03 18:28:56 +0100 |
---|---|---|
committer | Caoimhe Chaos <caoimhechaos@protonmail.com> | 2020-02-03 18:28:56 +0100 |
commit | f33fb738c66acb7721123b53bfd943c141903cab (patch) | |
tree | 2e6150c030c1a4570de837516e65317717d7ac1c | |
parent | 7a7d902fa15a335110d01773711d47cd050bf1d6 (diff) |
Sehr grobe Dokumentation des Blogs.
-rw-r--r-- | Infrastruktur.mdwn | 1 | ||||
-rw-r--r-- | Infrastruktur/Software/sfblog.mdwn | 27 |
2 files changed, 28 insertions, 0 deletions
diff --git a/Infrastruktur.mdwn b/Infrastruktur.mdwn index 3f6409a6..b80ff39c 100644 --- a/Infrastruktur.mdwn +++ b/Infrastruktur.mdwn @@ -13,6 +13,7 @@ Hier ist ein Überblick über unsere [[Howtos/IT-Infrastruktur]] zu finden. Eine kurze Beschreibung des Status unserer internen Softwareprojekte: * [[Mitgliederverwaltungssystem (membersys)|Infrastruktur/Software/membersys]] +* [[Hauptwebsite und Blog (sbflog)|Infrastruktur/Software/sfblog]] ## Projekte diff --git a/Infrastruktur/Software/sfblog.mdwn b/Infrastruktur/Software/sfblog.mdwn new file mode 100644 index 00000000..bee796e2 --- /dev/null +++ b/Infrastruktur/Software/sfblog.mdwn @@ -0,0 +1,27 @@ +[[!meta title="Hauptwebsite und Blog"] + +* Quellcode: <https://github.com/starshipfactory/sfblog> +* URL: <https://www.starship-factory.ch/>, <https://www.starship-factory.ch/admin> + +## Requirements + +* Darstellung von statischem Content für die Infoseiten (Anfahrt, Datenschutzerklärung etc) +* 2 navigierbare Menüs (top und bottom) +* Blogfunktion neben den statischen Seiten +* Einfache Editierbarkeit von Einträgen per WYSIWYG-Editor +* SPAM-Schutz für Blogkommentare + +## Technische Details + +Das Blog ist als Django-Dienst implementiert und läuft unter gunicorn mit einer eigenen nginx-Instanz. Statische Daten (hochgeladenen Bilder, etc) werden im lokalen Dateisystem gespeichert, der Rest (Texte, Metadaten, Kommentare, etc) in einer PostgreSQL-Datenbank. + +Die Struktur der Seite ist durch [jinja2-Templates](https://jinja.palletsprojects.com/en/2.11.x/) gesteuert. Diese Templates können recht umfassend angepasst werden. Manche Inhalte werden nur auf bestimmten Seiten angezeigt. + +Der SPAM-Schutz benutzt akismet. + +## Bekannte Probleme + +* Die Webseite ist inhärent auf einen einzelnen Server limitiert und kann nicht einfach repliziert betrieben werden. Die maximale Kapazität der Webseite ist somit die Kapazität eines einzelnen Servers. +* Django ist nicht besonders effizient und benötigt ca. 1 Core für 0.25 Anfragen pro Sekunde. +* Ein Scraper sendet mehrere Male am Tag genug Anfragen, um die CPU des Servers, auf welchem das Blog läuft, komplett auszulasten. Das führt zu hoher Latenz und Fehlern beim Laden der Seite. +* Der SPAM-Schutz ist nicht so effizient wie er sein sollte. |