Eine Million Schachbretter: Ein Single-Process-Server verarbeitet Millionen gleichzeitiger Schachpartien

2025-07-16
Eine Million Schachbretter: Ein Single-Process-Server verarbeitet Millionen gleichzeitiger Schachpartien

Der Autor hat „Eine Million Schachbretter“ entwickelt, ein Online-Multiplayer-Schachspiel, bei dem ein 1000x1000-Raster von Schachbrettern ein einziges globales Spiel bildet. Jeder Zug wirkt sich sofort auf das gesamte Brett aus, ohne Runden und mit der Möglichkeit, Figuren zwischen den Brettern zu bewegen. Das Spiel läuft auf einem einzigen Go-Prozess und hat in 10 Tagen über 150.000 Spieler angezogen, die über 15.000.000 Züge und Hunderte Millionen von Anfragen verarbeitet haben. Der Artikel beschreibt detailliert das Systemdesign des Spiels, die Datenverteilung, Protokolloptimierungen, optimistisches Locking und Rollback-Mechanismen. Der Autor teilt die gewonnenen Erkenntnisse, darunter Performance-Optimierung, Architekturentscheidungen und das Gleichgewicht zwischen Spielumfang und Spielerfahrung. Der Beitrag schließt mit Überlegungen zu Designfehlern, wie dem Mangel an einer beeindruckenden Skalierung, und zukünftigen Spielentwicklungsplänen.

Mehr lesen

Eine Million Schachbretter: Das verrückteste Multiplayer-Schachspiel aller Zeiten

2025-04-28
Eine Million Schachbretter: Das verrückteste Multiplayer-Schachspiel aller Zeiten

Ein Entwickler hat eine Website namens „Eine Million Schachbretter“ erstellt, auf der – Sie ahnen es schon – eine Million Schachbretter zu finden sind! Alle Spieler teilen sich dieselben Bretter und bewegen die Figuren sofort ohne Runden. Der Entwickler hat enorme technische Herausforderungen gemeistert und das Backend in Go (sein erstes Go-Projekt!) geschrieben, wobei er einen einzelnen Schreibthread und zahlreiche Lesethreads verwendet und eine optimistische Sperre für die Nebenläufigkeit implementiert hat. Dieses Projekt ist eine technische Meisterleistung. Spielen Sie es und erleben Sie Multiplayer-Schach wie nie zuvor!

Mehr lesen

Pong in Browser-Tabs ausführen

2025-02-20
Pong in Browser-Tabs ausführen

Ein Entwickler hat auf geniale Weise Pong in 240 Browser-Tabs zum Laufen gebracht! Mit AppleScript wurde ein Tab-Raster erstellt, Web Workers sorgen für effiziente Hintergrundaktualisierungen und Broadcast Channel ermöglicht die Kommunikation zwischen den Tabs. Das Spiel wird in den Favicons der Tabs gerendert. Dieses Projekt demonstriert die Leistungsfähigkeit der Browser-APIs und kreative Problemlösungsansätze.

Mehr lesen

Bad Apple in Vim: 6500 reguläre Ausdrücke und jede Menge Magie

2025-01-12
Bad Apple in Vim: 6500 reguläre Ausdrücke und jede Menge Magie

Dieser Beitrag beschreibt, wie der Autor das Musikvideo Bad Apple in Vim nur mit Suchbefehlen gerendert hat. Jedes Frame wurde in ein binäres Pixelarray umgewandelt, in Rechtecke zerlegt und durch einen regulären Vim-Ausdruck dargestellt. Das Ergebnis? Eine Datei mit über 6500 regulären Ausdrücken, die sequenziell über ein Vim-Makro abgespielt werden, um die Animation zu erstellen. Dieses beeindruckende Kunststück zeigt die überraschenden Fähigkeiten von Vim und die beachtlichen Programmierkenntnisse des Autors.

Mehr lesen
Entwicklung Regulärer Ausdruck