Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Aki's Vibes
#24
akigrid – Wochenend-Update (18./19. April 2026)

Dieses Wochenende war richtig produktiv. Ich arbeite gerade an akigrid – einem selbst geschriebenen Ersatz für den Server-Kern, der hinter einer OpenSimulator-Grid-Instanz läuft (vergleichbar mit dem, was Robust.exe bei klassischen OpenSim-Setups macht). Das Ziel: moderner, stabiler, besser wartbar – und speziell auf meine eigene Grid-Infrastruktur zugeschnitten.

Samstag

Aufräumen & Grundlagen
Bevor man ein Haus baut, muss das Fundament stimmen. Ich bin dabei ein paar alte Überbleibsel aus früheren Projekt-Experimenten bereinigt und die Projektbeschreibungen für akigrid und seinen Schwesterserver akisim (der den Regions-Server ersetzt) massiv umzubauen – klarer, ehrlicher, mit realistischen Zielen.

Datenbank-Struktur angelegt
Der Server muss irgendwo seine Daten speichern – Grid-Einstellungen, Benutzerinfos, Regionen usw. Ich habe damit angefangen, die nötige Datenbankstruktur aufzubauen. Der erste Schritt war eine Tabelle für grundlegende Grid-Parameter. Klingt unspektakulär, ist aber die Basis für alles andere. Das Ganze wurde mit automatisierten Tests abgesichert, die beim Start des Servers prüfen ob alles korrekt angelegt wurde.

Architekturentscheidung: Lesen und Schreiben sauber trennen
Eine wichtige Design-Entscheidung für den Code: Abfragen (z.B. "was steht in der Datenbank?") und Änderungen (z.B. "schreib das in die Datenbank") werden im Code klar voneinander getrennt. Das macht den Server langfristig einfacher zu warten und zu testen – und ist eine bewusste Verbesserung gegenüber dem bisherigen PHP-System, das beides munter durcheinander mischt.

Sonntag

Grid-Info-Endpunkt fertiggestellt
Wenn ein Viewer (z.B. Firestorm) sich mit einem Grid verbindet, fragt er als erstes: "Wer bist du eigentlich? Wie heißt das Grid, wie lautet deine Adresse, welche Funktionen bietest du?" – Das ist der sogenannte Grid-Info-Endpunkt. Der ist jetzt vollständig implementiert, getestet und läuft. Ein wichtiger erster Meilenstein: akigrid kann sich gegenüber Viewern korrekt vorstellen.

Automatische Bereitstellung (CI/CD)
Bisher musste ich nach jeder Änderung den Server manuell auf dem Hetzner-Server aktualisieren. Das ist jetzt automatisiert: Sobald ich neuen Code hochlade, wird automatisch ein fertiges Server-Paket gebaut und bereitgestellt. Ich musste dabei ein kleines Netzwerkproblem auf dem Server lösen (ein Systemdienst hatte sich selbst in einen inkonsistenten Zustand manövriert), aber danach lief alles reibungslos durch.

Übergangsphase: Alter und neuer Server laufen parallel
Das bisherige Grid läuft noch auf dem alten PHP-basierten Server. Damit ich nicht von heute auf morgen alles umstellen muss, habe ich eine Brücke gebaut: Der alte Server leitet bestimmte Anfragen transparent an akigrid weiter. Für Viewer und Nutzer ändert sich nichts – im Hintergrund übernimmt akigrid aber schon einen Teil der Arbeit.

Eingebaute Überwachung
Ein Server, der im Stillen vor sich hin läuft und niemanden informiert wenn etwas nicht stimmt, ist schwer zu betreiben. Ich habe deshalb Schritt für Schritt ein vollständiges Überwachungssystem eingebaut:
  • Tracing: Jede Anfrage hinterlässt eine Spur durch den Server – wie ein Röntgenbild das zeigt wo Zeit verbraucht wird und wo Fehler auftreten. Das hilft enorm bei der Fehlersuche.
  • Metriken: Zahlen die kontinuierlich gesammelt werden – wie viele Anfragen pro Minute kommen rein, wie lange braucht die Datenbank im Schnitt, gibt es Ausreißer? Diese Daten können in einem Dashboard visualisiert werden.
  • Automatische Tests für die Überwachung selbst: Auch das Überwachungssystem hat Tests – es wird geprüft ob die Metriken und Spuren tatsächlich ankommen und die richtigen Informationen enthalten.

Das alles klingt nach viel Overhead – aber ein Server ohne Überwachung ist wie ein Auto ohne Armaturenbrett. Man merkt erst dass etwas nicht stimmt wenn es zu spät ist.

Wo stehen wir jetzt?

akigrid kann sich gegenüber Viewern korrekt vorstellen, läuft in einem Docker-Container, wird automatisch gebaut und deployed, hat eine Datenbankanbindung mit sauberer Migrationshistorie, und ist mit einem vollständigen Überwachungsstack ausgestattet. Das Fundament steht.

Als nächstes geht es an die eigentlichen Grid-Dienste: Zuerst mal einen Dienst den wir noch nicht haben XBakes

Codeberg: codeberg.org/AkiraSonoda/akigrid
[Bild: footert5jul.jpg]
[-] The following 5 users say Thank You to Akira for this post:
  • Bogus Curry, Dorena Verne, LyAvain, Mareta Dagostino, Pius Noel
Zitieren


Nachrichten in diesem Thema
Aki's Vibes - von Akira - 24.01.2026, 23:52
RE: Aki's Vibes - von Dorena Verne - 25.01.2026, 18:55
RE: Aki's Vibes - von Dorena Verne - 25.01.2026, 19:33
RE: Aki's Vibes - von Akira - 25.01.2026, 22:57
Aki's Vibes - Gridgeburtstag - von Akira - 01.02.2026, 19:41
RE: Aki's Vibes - von Dorena Verne - 02.02.2026, 07:00
RE: Aki's Vibes - von Bogus Curry - 02.02.2026, 10:23
RE: Aki's Vibes - von Mareta Dagostino - 02.02.2026, 10:36
RE: Aki's Vibes - von Dorena Verne - 02.02.2026, 10:39
RE: Aki's Vibes - von Mareta Dagostino - 02.02.2026, 10:49
Aki's Vibes - von Akira - 09.02.2026, 01:16
RE: Aki's Vibes - von Akira - 16.02.2026, 00:44
RE: Aki's Vibes - von Christoph Balhaus - 16.02.2026, 11:09
RE: Aki's Vibes - von Akira - 16.02.2026, 16:20
RE: Aki's Vibes - von Akira - 22.02.2026, 21:24
Aki's Vibes - von Akira - 01.03.2026, 22:20
RE: Aki's Vibes - von Bogus Curry - 02.03.2026, 13:52
RE: Aki's Vibes - von Akira - 02.03.2026, 23:02
RE: Aki's Vibes - von Dorena Verne - 02.03.2026, 14:11
Aki's Vibes - von Akira - 08.03.2026, 22:29
RE: Aki's Vibes - von Bogus Curry - 09.03.2026, 23:00
RE: Aki's Vibes - von Akira - 10.03.2026, 07:10
Aki's Vibes - von Akira - 06.04.2026, 00:33
RE: Aki's Vibes - von Akira - 19.04.2026, 20:33
RE: Aki's Vibes - von Dorena Verne - 19.04.2026, 20:42
RE: Aki's Vibes - von Bogus Curry - 19.04.2026, 21:24
RE: Aki's Vibes - von Akira - 19.04.2026, 21:51
RE: Aki's Vibes - von Akira - 26.04.2026, 19:27
RE: Aki's Vibes - von Bogus Curry - 27.04.2026, 15:17
Aki's Vibes - von Akira - 28.04.2026, 22:26
RE: Aki's Vibes - von Dorena Verne - 29.04.2026, 05:31
RE: Aki's Vibes - von LyAvain - 29.04.2026, 19:52
RE: Aki's Vibes - von Jupiter Rowland - Gestern, 21:24
Aki's Vibes - von Akira - 03.05.2026, 17:36

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste