基本的に、フレームワークはhttpリクエスト(あなたが言ったようにデータベースを処理することを含む)に対する応答を提供する責任しか負いません。しかし、新しいhttp要求が到着するたびに、Railsは新しいスレッド(またはいくつかの実装、プロセス)を開く責任を負いません。これはアプリケーションサーバ(Puma、Webrick、Unicornなど)によって行われます。これは並行性(同時に複数の要求に同時にアプリケーションを提供する能力)と呼ばれ、純粋にアプリケーションサーバの仕事です。もう一つは、httpリクエストの理解(および解析)です.Railsはhttpを実装していないため、httpを実装するアプリケーションサーバーから準備ができたリクエストを受け取ります。
ルビーランドでは、各部分のジョブはラックプロトコルhttps://rack.github.io/によって定義されています。 Railsは、ラックアプリケーションとして、(HTTPリクエストを使用して)「何か」(Webアプリケーションサーバー)が「呼び出し」するのを待ってから応答を返します。
まとめ:アプリケーションサーバーは、RailsへのHTTPリクエストを処理するためにスレッド化またはマルチプロセッシングを処理する必要があります(アプリケーションサーバーは基本的に常に新しい要求をソケットでリッスンし、プロセスをフォークするか、スレッド、またはその両方)。アプリケーションサーバーによって異なります。したがって、アプリケーションサーバーはhttp(HTTPリクエストを解析できるように)を理解する必要があるため、それをRailsにサーバーすることもできます。
WebフレームワークのRailsは、http要求を処理して応答を返すだけです。
私はあなたに感謝します – Jgj1018