理解できません!
ラック: http://rack.rubyforge.org/
Rails メタル: http://weblog.rubyonrails.org/2008/12/17/introducing-rails-metal
2つの記事を読んで、目がぼやけました。2 つのコンポーネントはどのように関連していますか? 例は素晴らしいでしょうか?
理解できません!
ラック: http://rack.rubyforge.org/
Rails メタル: http://weblog.rubyonrails.org/2008/12/17/introducing-rails-metal
2つの記事を読んで、目がぼやけました。2 つのコンポーネントはどのように関連していますか? 例は素晴らしいでしょうか?
Rackは、RubyWebサーバーが実装できる非常に軽量な仕様です。これはミドルウェアであり、Webサーバー(Passengerなど)とRailsの間にあることを意味します。
Rails Metalは、最大のパフォーマンスが必要な場合にRailsを使用してHTTPリクエストを処理する方法です。それは事実上あなたを金属に連れて行き、標準のRailsの要求/応答サイクルがあなたに与えるすべての通常の機能(そしてそれ故にオーバーヘッド)をバイパスします。技術的には、RailsMetalはRackハンドラーの実装です。
あなたは主題に関するこれらの2つのRailscastを有益であると思うかもしれません:
RailsアプリケーションのRackミドルウェアスタックのリストは、次を使用して取得できます。rake middleware
Rackは、さまざまなアプリケーションフレームワークをWebサーバーに統合できるようにする一般的なRubyAPI/抽象化レイヤーです。
Rails Metalは、RailsによるRackハンドラーの実装です。Railsを呼び出すハンドラーだけでなく、独自のAPIを公開して、WebサーバーにアクセスしてコアRailsをバイパスする独自のハンドラーを簡単に作成できるようにします。
Jesse Newland のサイトには、すばらしい議論といくつかの例があります。
したがって、基本的に、Rails Metal は Rails の新しい Rack ミドルウェア サポートのシン ラッパーです。Rack ミドルウェアは非常に強力なものです。要求を個別に、または他のミドルウェアと連携して処理する、フレームワークに依存しないコンポーネントです。