Zum Hauptinhalt springen
usedby

Rails 8/9: Der Wechsel zu datenbankgestützter Infrastruktur auf dem Prüfstand

Rails hat sich der Philosophie eines „One Person Framework“ verschrieben und verzichtet auf externe Abhängigkeiten wie Redis und komplexe JS-Build-Pipelines. Es positioniert sich als stabile, „langweilige“ Alternative.

Das Versprechen

Rails hat sich der Philosophie eines „One Person Framework“ verschrieben und verzichtet auf externe Abhängigkeiten wie Redis und komplexe JS-Build-Pipelines. Das Framework positioniert sich als stabile, „langweilige“ Alternative für Teams, die vom unbeständigen Zustand des Next.js- und React-Ökosystems erschöpft sind (Quelle: HN).

Unter der Haube

Die zentrale technische Neuerung in Rails 8 und 9 ist der Wegfall von Redis aus dem Standard-Stack durch das „Solid Trifecta“. Mit Solid Cache, Solid Queue und Solid Cable können Anwendungen Caching, Hintergrundjobs und WebSockets direkt über die primäre Datenbank abwickeln (Quelle: markround.com).

Diese Architektur vereinfacht den Stack für kleine bis mittlere Bereitstellungen, besonders in Kombination mit SQLite. SQLite gilt inzwischen als produktionsreif, da der WAL-Modus standardmäßig aktiviert ist (Quelle: markround.com). Die Bereitstellung wurde mit Kamal 2.0 vereinheitlicht: Container lassen sich ohne Ausfallzeit auf jedem beliebigen VPS bereitstellen, ohne den Overhead von Kubernetes (Quelle: dev.to).

Im Frontend gilt nun standardmäßig ein „No-Build“-Ansatz mit Import Maps und Stimulus. Damit entfällt in vielen Produktionsumgebungen der Bedarf an Node.js (Quelle: jetrockets.com). Der Ansatz „Convention over Configuration“ stellt jedoch weiterhin eine „Komplexitätsmauer“ für Entwickler dar, die von expliziten Micro-Frameworks wie Go oder Express kommen. Sie haben oft Mühe, die interne „Magie“ zu debuggen (Quelle: Monterail).

Die Wartungslast bleibt ein erhebliches Problem. Projekte, die älter als fünf Jahre sind, geraten häufig in die „Dependency Hell“, in der Gems mit bestimmten Versionen von Systembibliotheken kollidieren (Quelle: HN). Zudem ist Ruby 4.0 zwar schneller geworden, doch bei WebSocket-Anwendungen mit hoher Nebenläufigkeit liegt das Framework weiterhin hinter Go oder Phoenix von Elixir zurück (Quelle: reddit.com/r/elixir).

Wir wissen noch nicht, wie die neue „Solid“-Suite unter hoher Last in Enterprise-Szenarien im Vergleich zu Redis abschneidet, denn direkte Benchmarks fehlen. Ebenso wissen wir nicht, ob der in Rails 8 eingeführte integrierte Auth Generator Devise bei komplexen Anforderungen auf Enterprise-Niveau tatsächlich ersetzt.

Unsere Einschätzung

Setzen Sie Rails 8/9 für jedes neue interne Tool oder B2B-SaaS ein, bei dem eine schnelle Markteinführung wichtiger ist als extreme Nebenläufigkeit. Die „Solid“-Architektur ist ein pragmatischer Gewinn: Sie senkt Infrastrukturkosten und kognitive Last. Sieht Ihre Roadmap jedoch mehr als 100.000 gleichzeitige WebSocket-Verbindungen vor, bleiben Sie bei Elixir oder Go. Die Leistungsgrenze von Ruby liegt höher als früher, aber sie ist nicht verschwunden.