Programmierung

Ruby on Rails treibt Shopify und GitHub bis heute an

netcomputing.de Redaktion10. Juni 20234 Min. Lesezeit
Ruby on Rails treibt Shopify und GitHub bis heute an
Photo by Sash Bo

Zusammenfassung

Rails 8, veröffentlicht im November 2024, ersetzt externe Werkzeuge wie Redis durch datenbankbasierte Komponenten und liefert mit Kamal 2 eine eigene Lösung für Serverbetrieb ohne bezahlten Hosting-Dienst. Shopifys Rails-Anwendung umfasst über 2,8 Millionen Zeilen Code und verarbeitete am Black Friday 2024 an einem Tag 173 Milliarden Anfragen. GitHub, Basecamp und der E-Mail-Dienst Hey laufen ebenfalls auf Rails, teils kombiniert mit der JavaScript-armen Technik Hotwire. Ein derart großer, über zwanzig Jahre gewachsener Programmcode lässt sich kaum wirtschaftlich auf ein anderes Framework umstellen, weshalb Unternehmen weiter in Rails investieren statt es abzulösen.

Ruby on Rails kam 2004 auf den Markt, entwickelt von David Heinemeier Hansson für die eigene Projektverwaltungs-Software von Basecamp. Über zwanzig Jahre später läuft mit Shopify eine der größten E-Commerce-Plattformen der Welt weiterhin auf genau diesem Framework, zusammen mit GitHub, Basecamp selbst und dem E-Mail-Dienst Hey. Das alte Urteil, Rails skaliere nicht für große Anwendungen, lässt sich an diesen Beispielen nicht mehr halten.

Rails 8 verzichtet auf Redis und einen separaten Build-Schritt

Rails 8 erschien am 7. November 2024 und bringt drei neue Komponenten mit, die bisher externe Zusatzsoftware brauchten. Solid Queue kümmert sich um Hintergrundjobs, Solid Cache um das Zwischenspeichern von Daten und Solid Cable um Websocket-Nachrichten. Alle drei speichern ihre Daten direkt in der ohnehin vorhandenen Datenbank statt in einem separaten Redis-Server, den frühere Rails-Versionen dafür zusätzlich brauchten. Für die Auslieferung liefert Rails 8 außerdem Kamal 2 mit, ein Werkzeug, das eine Anwendung mit automatischem SSL-Zertifikat und ohne Ausfallzeit auf einem eigenen Server bereitstellt, ganz ohne einen bezahlten Hosting-Dienst dafür zu benötigen.

Shopify verarbeitet damit Milliarden Anfragen an einem einzigen Tag

Der Programmcode von Shopify, der sogenannte Rails-Monolith, umfasst mehr als 2,8 Millionen Zeilen Ruby-Code und über 500.000 Commits. Mehr als tausend Entwicklerinnen und Entwickler haben über mehr als ein Jahrzehnt daran gearbeitet. Am Black Friday 2024 verarbeitete die Plattform an einem einzigen Tag 173 Milliarden Anfragen, mit einer Spitzenlast von 284 Millionen Anfragen pro Minute. Diese Zahlen widerlegen die verbreitete Annahme, Rails eigne sich nur für kleinere Anwendungen. Shopify betreibt außerdem ein eigenes Team, das ausschließlich daran arbeitet, Ruby und Rails für diese Größenordnung weiterzuentwickeln, und veröffentlicht seine Ergebnisse öffentlich unter railsatscale.com.

GitHub, Basecamp und Hey laufen ebenfalls auf Rails

GitHub baute seine Plattform seit der Gründung 2008 auf Rails und betreibt zentrale Teile davon bis heute darauf. Basecamp, das Unternehmen hinter Rails, nutzt das Framework für sein gleichnamiges Projektmanagement-Tool und für den E-Mail-Dienst Hey, beide kombiniert mit Hotwire, einer Technik aus den Bausteinen Turbo und Stimulus. Hotwire liefert interaktive Oberflächen, ohne dass dafür ein separates JavaScript-Framework wie React oder Vue nötig wird. Der Server schickt dabei fertige HTML-Fragmente statt Rohdaten im JSON-Format. Diese Kombination erklärt, warum Rails 8 mit Propshaft eine neue, bewusst einfache Asset-Pipeline mitbringt: Basecamp verfolgt seit Jahren die Linie, möglichst ohne separaten JavaScript-Build-Schritt auszukommen.

Warum große Anwendungen selten das Framework wechseln

Ein Programmcode mit 2,8 Millionen Zeilen komplett auf ein anderes Framework umzustellen, wäre für Shopify ein mehrjähriges Projekt mit hohem Ausfallrisiko, ohne dass dabei für Kunden neue Funktionen entstehen. Die naheliegendere Entscheidung ist deshalb, in das bestehende Framework zu investieren, wie es das eigene Rails-Team bei Shopify vorführt. Für neue Entwicklerinnen und Entwickler, die in ein solches Projekt einsteigen, hat das einen weiteren Vorteil. Rails folgt konsequent dem Prinzip "Konvention vor Konfiguration": Jede Rails-Anwendung ist nach denselben Regeln aufgebaut. Neue Teammitglieder finden sich dadurch schneller zurecht als in einer Anwendung mit selbst erfundener Struktur. Für ein Framework, das seit 2004 am Markt ist, ist genau das der Grund, warum es nicht verschwindet, sondern jedes Jahr eine neue Version bekommt.

Häufig gestellte Fragen

Was sind Solid Queue, Solid Cache und Solid Cable in Rails 8?

Solid Queue, Solid Cache und Solid Cable sind drei mit Rails 8 eingeführte Komponenten für Hintergrundjobs, Zwischenspeicherung und Websocket-Nachrichten. Alle drei speichern ihre Daten direkt in der ohnehin vorhandenen Datenbank statt in einem separaten Redis-Server, den frühere Rails-Versionen dafür zusätzlich brauchten.

Wie viele Anfragen verarbeitet Shopify mit seiner Rails-Anwendung?

Am Black Friday 2024 verarbeitete Shopify an einem einzigen Tag 173 Milliarden Anfragen, mit einer Spitzenlast von 284 Millionen Anfragen pro Minute. Der zugrunde liegende Rails-Programmcode umfasst mehr als 2,8 Millionen Zeilen und über 500.000 Commits von mehr als tausend Entwicklerinnen und Entwicklern.

Was ist Hotwire und warum setzen Basecamp und Hey darauf?

Hotwire ist eine Technik aus den Bausteinen Turbo und Stimulus, die interaktive Oberflächen liefert, ohne dass dafür ein separates JavaScript-Framework wie React oder Vue nötig wird. Der Server schickt dabei fertige HTML-Fragmente statt Rohdaten im JSON-Format, eine Kombination, die Basecamp für sein Projektmanagement-Tool und den E-Mail-Dienst Hey einsetzt.

Warum wechseln große Rails-Anwendungen wie Shopify nicht einfach das Framework?

Einen Programmcode mit 2,8 Millionen Zeilen komplett auf ein anderes Framework umzustellen, wäre für Shopify ein mehrjähriges Projekt mit hohem Ausfallrisiko, ohne dass dabei neue Funktionen für Kunden entstehen. Die naheliegendere Entscheidung ist deshalb, weiter in das bestehende Framework zu investieren, wie es Shopifys eigenes Rails-Team vorführt.

Quellen

  1. Rails 8.0: No PaaS Required, Ruby on Rails, abgerufen am 2026-08-26
  2. Under Deconstruction: The State of Shopify's Monolith, Shopify Engineering, abgerufen am 2026-08-26
  3. Shopify-Zahlen zu Black Friday Cyber Monday 2024, Shopify News, abgerufen am 2026-08-26
  4. Rails at Scale: das Ruby-und-Rails-Infrastrukturteam von Shopify, Shopify (Rails at Scale), abgerufen am 2026-08-26
  5. Building GitHub with Ruby and Rails, The GitHub Blog, abgerufen am 2026-08-26
  6. Stimulus 3 + Turbo 7 = Hotwire 1.0, HEY World (David Heinemeier Hansson), abgerufen am 2026-08-26

Der Content wurde mit Hilfe von KI erstellt, vor allem in der Recherche und Vorformulierung. Prüfung und Abnahme durch unsere Redaktion.