From f33fb738c66acb7721123b53bfd943c141903cab Mon Sep 17 00:00:00 2001 From: Caoimhe Chaos Date: Mon, 3 Feb 2020 18:28:56 +0100 Subject: Sehr grobe Dokumentation des Blogs. --- Infrastruktur/Software/sfblog.mdwn | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 Infrastruktur/Software/sfblog.mdwn (limited to 'Infrastruktur/Software') 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: +* URL: , + +## 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. -- cgit v1.2.1