多くの依存関係を持つRailsアプリケーションを起動するとき、require
ファイルの処理に多くの時間が費やされます(私はそう思います)。
require
同じルール (同じファイルを 2 回取得しないなど) を使用して、すべてのステートメントをファイル連結に変換するデプロイ プロセスを作成するとします。基本的に、アセット パイプラインが JavaScript を処理するのと同じように Ruby を処理します。
これは実際の速度の違いになりますか? 元のソース ファイルにエラーを追跡するのが難しくなる以外に、たとえば可変スコープで問題が発生しますか?
要するに、これは素晴らしいですか、それともクレイジーですか?
アップデート
pst が指摘しているように、これは本番環境では無意味です。サーバーはすべてを 1 回ロードしてから、フォークして新しい要求を処理する可能性があります。
しかし、テストを実行するたびに Rails アプリを起動するテスト環境について考えてみましょう。すべての gem を事前に連結すると、Spork gem と同様の効果が得られます。
私の本当の質問は、ファイルの内容を解析するのにどれだけの時間が費やされているかrequire
だと思います。