Die Software wurde als Alternative zu Seitengeneratoren wie php oder vb.net entwickelt.
Der grundsätzliche Unterschied liegt in der standalone-Architektur mit integriertem http-Server: Die Anwendung muss nicht bei jedem Request neu geladen werden, sie befindet sich bereits im Specher. Beim Entwurf wurde weiterhin Wert auf hohen Durchsatz bei schmalem Memory-Footprint gelegt.
Eigenschaften:
- ‚all in one binary‘
- integrierter http-Server
- integrierte Treiberschnittstelle zur Datenbank (hier: mysqlDB)
- der Server arbeitet non-blocking (’spinning‘),
- die Content-Generatoren sind multithreaded
Ein wichtiges Kriterium bei der Softwarearchitektur war die strikte Trennung der Bereiche Design, Inhalt und Funktion:
- Keine SQL-Abfragen im C++ Quellcode oder in HTML-Vorlagen
- Keine HTML-Schnipsel im C++ Quellcode
Neben der Verwaltung von typischen Inhalten (Foren, News, Faqs, Fachartikel etc.) erlaubt die Software auch detailliertes User- und Rollen-Management mit Inhalte-bezogener Rechteverwaltung.
Eine einfache Template-Sprache ist integriert, dabei wird ein ‚inherit by copy‘-Mechanismus verwendet: Unterseiten bzw. wieder verwendbare Inhaltsblöcke ‚erben‘ Design und Struktur von den Hauptseiten.
Eine Demo-Version läuft unter supportware.sourceworx.org.
- Techstack: C / C++ / stl / mariaDB Wrapper-Bibliothek
- Plattform: Linux/Unix-Systeme
- Quellcode: gitea.sourceworx.org/chris/supportware