6

理解できません!

ラック: http://rack.rubyforge.org/

Rails メタル: http://weblog.rubyonrails.org/2008/12/17/introducing-rails-metal

2つの記事を読んで、目がぼやけました。2 つのコンポーネントはどのように関連していますか? 例は素晴らしいでしょうか?

4

4 に答える 4

13

Rackは、RubyWebサーバーが実装できる非常に軽量な仕様です。これはミドルウェアであり、Webサーバー(Passengerなど)とRailsの間にあることを意味します。

Rails Metalは、最大のパフォーマンスが必要な場合にRailsを使用してHTTPリクエストを処理する方法です。それは事実上あなたを金属に連れて行き、標準のRailsの要求/応答サイクルがあなたに与えるすべての通常の機能(そしてそれ故にオーバーヘッド)をバイパスします。技術的には、RailsMetalはRackハンドラーの実装です。

あなたは主題に関するこれらの2つのRailscastを有益であると思うかもしれません:

RailsアプリケーションのRackミドルウェアスタックのリストは、次を使用して取得できます。rake middleware

于 2009-04-17T22:03:24.163 に答える
4

Rackは、さまざまなアプリケーションフレームワークをWebサーバーに統合できるようにする一般的なRubyAPI/抽象化レイヤーです。

Rails Metalは、RailsによるRackハンドラーの実装です。Railsを呼び出すハンドラーだけでなく、独自のAPIを公開して、WebサーバーにアクセスしてコアRailsをバイパスする独自のハンドラーを簡単に作成できるようにします。

于 2009-04-17T22:02:00.673 に答える
4

Jesse Newland のサイトには、すばらしい議論といくつかの例があります。

したがって、基本的に、Rails Metal は Rails の新しい Rack ミドルウェア サポートのシン ラッパーです。Rack ミドルウェアは非常に強力なものです。要求を個別に、または他のミドルウェアと連携して処理する、フレームワークに依存しないコンポーネントです。

于 2009-04-17T22:19:16.200 に答える