Я использую свой собственный веб-сервер на 384 МБ VPS от Slicehost для обслуживания двух приложений Ruby on Rails на отдельных виртуальных хостах. Я использую Phusion Passenger с Apache2. Ниже приводится содержимое моего Passenger.conf.
<IfModule passenger_module>
PassengerRoot /opt/ruby-enterprise-1.8.6-20090610/lib/ruby/gems/1.8/gems/passenger-2.2.11
PassengerLogLevel 0
PassengerRuby /usr/local/bin/ruby
PassengerUserSwitching on
PassengerDefaultUser nobody
PassengerMaxPoolSize 3
PassengerMaxInstancesPerApp 2
PassengerPoolIdleTime 300
# Ruby on Rails Options
RailsAutoDetect on
RailsSpawnMethod smart
NameVirtualHost *:80
</IfModule>
Если я сделаю «верхний» на своем сервере, у меня в среднем используется 314 МБ, это будет слишком много? Я ошибаюсь, и если нет, какие возможные шаги я могу предпринять, чтобы уменьшить использование памяти?
Спасибо!
Все зависит от приложений, которые вы пытаетесь разместить. Чем больше моделей / контроллеров имеет приложение, тем больше будет приложение. Чтобы лучше понять, сколько использует само приложение rails, попробуйте ввести команду.
passenger-memory-stats
Мое приложение среднего размера на данный момент использует:
### Total private dirty RSS: 68.93 MB
По словам пассажира. Если у вас есть несколько сайтов, работающих на одном экземпляре пассажира, это может выглядеть примерно так:
### Total private dirty RSS: 1489.46 MB
Также учтите, что если вы запускаете стандартный mysql-сервер, настройки на самом деле не оптимизированы для использования VPS (и, следовательно, с низким объемом памяти).