3 Punkte von GN⁺ 2024-01-15 | 1 Kommentare | Auf WhatsApp teilen

Was ist AsmBB?

  • AsmBB ist eine sehr schnelle und leichtgewichtige Webforum-Engine, geschrieben von JohnFound.
  • Das gesamte System ist in Assemblersprache geschrieben und verwendet SQLite als Datenbank-Backend.
  • Es läuft auch auf schwachem Hosting und kann gleichzeitig viele Besucher ohne Verzögerung verarbeiten.
  • Durch das interne Design und die Reduzierung von Abhängigkeiten ist es eine sehr sichere Webanwendung.
  • Für höhere Sicherheit wird eine verschlüsselte Datenbank unterstützt.
  • Die Anforderungen an die Laufzeitumgebung sind sehr gering: ein x86-Linux-Server (32-Bit oder 64-Bit), keine speziell vorinstallierten Bibliotheken erforderlich.
  • Es läuft gut selbst auf dem kleinsten und günstigsten VPS und kann auch auf Shared Hosting mit FastCGI-Unterstützung verwendet werden.
  • Erforderlich ist ein Webserver mit Unterstützung für die FastCGI-Schnittstelle; getestet wurde es mit Nginx, Apache, Lighttpd, Hiawatha und RWASA.
  • Das Forum lässt sich leicht anpassen, da es ein leistungsfähiges Template-System verwendet, mit dem Anpassungen möglich sind, ohne den Code tatsächlich zu ändern.

Download, Installation und Hacking

  • Binärpaket direkt herunterladen: asmbb.tar.gz (dieser Link verweist immer auf die neueste Version des Binärpakets).
  • Fortschritt verfolgen, Bugs melden und den Source Code klonen: AsmBB-Quellcode-Repository
  • Auf dem eigenen Server installieren und das schnellste Forum nutzen: Tutorial zur Installation mit NGINX und systemd
  • Mit RWASA in weniger als 2 Minuten installieren: Video-Tutorial, auch auf YouTube verfügbar

GN⁺-Meinung:

  • AsmBB ist eine in Assemblersprache geschriebene Hochleistungs-Webforum-Engine, deren Kernvorteil hohe Geschwindigkeit und starke Sicherheit auch auf leistungsschwachen Servern ist.
  • Attraktiv sind zudem die einfache Anpassbarkeit für Nutzer und die Kompatibilität mit verschiedenen Webservern.
  • Diese Technik bietet Entwicklern, die auch in ressourcenbeschränkten Umgebungen effiziente Webdienste aufbauen möchten, eine interessante Alternative.

1 Kommentare

 
GN⁺ 2024-01-15
Hacker-News-Kommentare
  • Zweifel an der Sicherheit von AsmBB

    • Es wird skeptisch gesehen, dass AsmBB aufgrund seines internen Designs und der reduzierten Zahl an Abhängigkeiten sehr sicher sein soll.
    • Der Wert gut getesteter Abhängigkeiten wird hervorgehoben, und es wird darauf hingewiesen, dass bei komplexer Software, die in Assembler geschrieben ist, Fehler auftreten können.
    • Das gilt insbesondere für die Verarbeitung von Strings.
  • Lob für die Verwendung von Assembler und Meinung zur Sicherheit

    • Die Verwendung von Assembler wird positiv bewertet, zugleich wird aber angemerkt, dass weniger Abhängigkeiten nicht automatisch mehr Sicherheit bedeuten.
    • Weniger Abhängigkeiten reduzieren potenzielle Schwachstellen, aber die Assembler-Sprache selbst garantiert keine Speichersicherheit, was das Risiko erhöhen kann.
    • Es wird Sympathie für Assembler-Anwendungen geäußert; zusätzlich wird angeregt, dass eine Portierung auf aarch64 schön wäre, damit es auf Pi-Zero oder Pi-W laufen kann.
  • Forschung zu dezentralen Foren

    • Jemand forscht zu dezentralen Foren und erwähnt, dass nach dem Niedergang von Usenet Forensoftware wie phpBB populär wurde.
    • Es wird der Bedarf an einem neuen Forum angesprochen, das Dezentralisierung und Replikation mit guter User Experience verbindet.
    • Die Herausforderung als verteiltes System wird als interessant empfunden, fast wie das Lösen eines Rätsels.
  • Verarbeitungszeit und die Bedeutung eines CDN

    • Es wird darauf hingewiesen, dass die Verarbeitungszeit zwar sehr schnell ist, die Übertragung eines Dokuments nach Dänemark jedoch 500–1000 ms dauert.
    • In diesem Fall könnte ein CDN wirksamer sein als performanter Code.
  • Frage zur Datenbankanbindung aus Assembler-Code

    • Es wird Neugier geäußert, wie man aus Assembler-Code eine Verbindung zu einer Datenbank herstellt.
    • Theoretisch sei das verständlich, aber selbst einfache Aufgaben zu schreiben dürfte enormen Aufwand erfordern.
  • Assembler-Code mit SQLite als Backend

    • Es wird erwähnt, dass das Projekt zwar in Assembler geschrieben ist, aber SQLite als Backend verwendet.
    • Es wird darauf hingewiesen, dass bei vielen Anwendungen eher I/O als die CPU zum Flaschenhals wird.
  • Bitte um Erklärung zur Unterstützung von Unicode-Emoji-Zeichen

    • Es wird um mehr Details zu der Aussage gebeten, Unicode-Emoji-Zeichen würden auf „wirklich native Weise“ unterstützt.
  • Meinung zu einem Schalter zum Deaktivieren von Live-Benachrichtigungen und zur öffentlichen Nutzerliste

    • Es wird erwähnt, dass es einen Button zum Deaktivieren von Live-Benachrichtigungen gibt.
    • Es wird infrage gestellt, ob es eine gute Idee ist, nicht eingeloggten Nutzern die Foren-Nutzerliste zu zeigen, und ob sich das konfigurieren lässt.
  • Forderung nach Rate Limiting für Live-Benachrichtigungen

    • Es wird erwähnt, dass Live-Benachrichtigungen zu häufig auftreten und dafür ein Rate Limiting nötig sei.
  • Hinweis auf fehlende Informationen zu Assemblersprache und Betriebssystem

    • Es wird bemängelt, dass im Titel nicht steht, welche Assembler-Sprache verwendet wird oder auf welchem Betriebssystem es läuft.
  • Möglichkeit einer ähnlichen Implementierung in C und Motivation für Assembler

    • Es wird erwähnt, dass sich Ähnliches auch in C ohne Standardbibliothek umsetzen ließe.
    • Abgesehen von Systemaufrufen gebe es keine Abhängigkeiten, und für den Einsatz von Assembler gebe es außer als intellektuelle Übung keinen besonderen Grund.