На самом деле это во многом зависит от того, какой веб-сервер вы используете и какую конфигурацию используете, не говоря уже о самом дизайне приложения. Проблемы конфигурации и дизайна включают в себя:
- Используете ли вы fastcgi, old-school cgi или какой-либо другой механизм обработки запросов (влияет на необходимость повторного запуска всего кода инициализации приложения для каждого запроса или нет)
- Используете ли вы memcache (или альтернативную стратегию кэширования) или нет (влияет на стоимость запросов к базе данных)
- Используете ли вы дополнительные методы балансировки нагрузки или нет
- Какую стратегию сохранения сеанса вы используете (при необходимости)
- Используете ли вы режим "разработки" или нет, что приводит к перезагрузке файлов кода при каждом их изменении (насколько я помню; возможно, это просто по запросу) или нет
Как и в большинстве сред веб-приложений, существуют решения для пула соединений, кэширования и управления процессами. Существует множество способов управления доступом к базе данных; обычные, стандартные, не обязательно являются самой высокой производительностью, но это не ракетостроение, чтобы скорректировать эту стратегию.
Кто-то, кто углубился во внутренности, может, вероятно, говорить более мучительно подробно, но большинство приложений используют либо FastCGI на Apache, либо альтернативный веб-сервер, более удобный для рельсов, что означает, что вы устанавливаете приложение только один раз на процесс.