Во-первых, как вы измеряете использование памяти?
Рекомендуется использовать Статистика пассажира-памяти для более точного понимания использования памяти (в отличие от верхней и т. Д.).).
В общем, действительно трудно сказать, не выполняя некоторые тесты самостоятельно - использование памяти может сильно различаться в зависимости от того, что на самом деле делает ваше приложение, и Sinatra не обязательно будет означать меньший объем памяти.
Например, если вы используете ActiveRecord, модели кэшируются платформой в рабочей среде, чтобы сократить время загрузки.Это произойдет независимо от используемой вами платформы приложения.
Однако для настройки стека Rails вы можете кое-что сделать.
Поэкспериментируйте с версиями Ruby.REE может иметь некоторые преимущества памяти при использовании с пассажиром.Ruby 1.9.2 имеет множество улучшений производительности.
Посмотрите на опции памяти пассажира:
- passenger_spawn_method
- passenger_max_pool_size
Другая вещь, которую вы можете сделать, это удалить неиспользованныечасти самого стека Rails (с использованием различных опций Rails Rack ).