Frage

Ich bekomme es nicht!

Rack: http://rack.rubyforge.org/

Rails Metal: http://weblog.rubyonrails.org/ 2008/12/17 / Einbringen-rails Metall

Ich lese die beiden Artikel und meine Augen wurden verschwommen. Wie verhalten sich die beiden Komponenten? Beispiele wären toll?

War es hilfreich?

Lösung

Rack ist eine sehr leichte Spezifikation, die Ruby Web-Server implementieren kann. Es ist Middleware was bedeutet, dass es zwischen dem Web-Server (z Passagier) sitzt in und Rails.

Rails Metal ist eine Möglichkeit, eine HTTP-Anforderung zu verarbeiten Rails für, wenn Sie benötigen die maximale Leistung verwenden. Es dauert fast bis auf das Metall und umgeht alle normalen Funktionen (und damit über Kopf), dass die Standard-Rails' Request / Response-Zyklus gibt Ihnen. Technisch gesehen, Rails Metal ist eine Implementierung eines Rack-Handler.

Sie können diese beiden Railscasts zum Thema informativ

Sie können eine Liste des Rack-Middleware-Stack erhalten für eine Rails-Anwendung rake middleware mit

Andere Tipps

Rack ist eine generische Ruby-API / Abstraktionsschicht, die unterschiedliche Anwendungs-Frameworks integrieren, um einen Web-Server ermöglicht.

Rails Metal Rails-Implementierung eines Rack-Handler. Es enthält nicht nur einen Handler, die Rails ruft, sondern auch seine eigene API zeigt, die es leichter macht, damit Sie Ihre eigenen Handler zu erstellen, die die Web-Server und Bypass-Kern Rails getroffen.

Es gibt eine große Diskussion und einige Beispiele auf Jesse Newland Website :

  

Also, im Wesentlichen, Rails Metal ist ein   dünne Hülle um Rails’ neue Rack-   Middleware-Unterstützung . Rack-Middleware   ist ziemlich starke Sache:   Rahmen unabhängige Komponenten,   Prozessanforderungen unabhängig oder in   Konzert mit anderer Middleware.

Zusätzlich zu den von anderen Leuten abgedeckt Unterschieden, wollte ich beachten, dass ein Rack-App entweder Middleware oder ein endgültiger Endpunkt sein könnte, während ActionController::Metal ist immer ein Endpunkt eines nie Middleware.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top