На сервере CentOS версии 6.2 (Final) (с Ruby 1.9.3 и Rails 3.2) и с использованием большего объема памяти, чем ожидалось.
Глядя на статистику-память-пассажира, я вижу пару ОГРОМНЫХ процессов httpd ... какие-либо мысли о том, как я могу выяснить, что происходит, и уменьшить использование памяти?
Здесь есть статистика ... спасибо!
---------- Apache processes -----------
PID PPID VMSize Private Name
---------------------------------------
1371 1 202.1 MB 0.1 MB /usr/sbin/httpd
4573 1371 210.2 MB 5.0 MB /usr/sbin/httpd
4778 1371 202.5 MB 0.6 MB /usr/sbin/httpd
4780 1371 217.6 MB 9.4 MB /usr/sbin/httpd
4781 1371 217.1 MB 9.1 MB /usr/sbin/httpd
4856 1371 202.4 MB 0.5 MB /usr/sbin/httpd
4863 1371 204.1 MB 2.1 MB /usr/sbin/httpd
5027 1371 202.4 MB 0.5 MB /usr/sbin/httpd
5043 1371 202.4 MB 0.4 MB /usr/sbin/httpd
5044 1371 205.5 MB 2.7 MB /usr/sbin/httpd
5072 1371 202.4 MB 0.5 MB /usr/sbin/httpd
5084 1371 202.4 MB 0.5 MB /usr/sbin/httpd
32111 1371 1297.0 MB 246.5 MB /usr/sbin/httpd
32579 1371 1914.3 MB 215.5 MB /usr/sbin/httpd
### Processes: 14
### Total private dirty RSS: 493.42 MB
-------- Nginx processes --------
### Processes: 0
### Total private dirty RSS: 0.00 MB
----- Passenger processes -----
PID VMSize Private Name
-------------------------------
4180 280.5 MB 24.4 MB Passenger ApplicationSpawner: /var/www/apps/people/current
4345 309.5 MB 53.4 MB Rack: /var/www/apps/people/current
4800 300.2 MB 55.2 MB Rack: /var/www/apps/people/current
4808 297.8 MB 52.5 MB Rack: /var/www/apps/people/current
4815 297.4 MB 52.4 MB Rack: /var/www/apps/people/current
4822 302.7 MB 55.6 MB Rack: /var/www/apps/people/current
22780 209.0 MB 0.0 MB PassengerWatchdog
22783 991.5 MB 1.3 MB PassengerHelperAgent
22785 113.4 MB 1.1 MB Passenger spawn server
22788 144.6 MB 0.0 MB PassengerLoggingAgent
22911 310.4 MB 64.0 MB Rack: /var/www/apps/people/current
22939 311.6 MB 53.5 MB Rack: /var/www/apps/people/current
26175 304.1 MB 55.8 MB Rack: /var/www/apps/people/current
26182 310.4 MB 44.0 MB Rack: /var/www/apps/people/current
### Processes: 14
### Total private dirty RSS: 513.24 MB
* ОБНОВИТЬ * : Я понимаю, что более серьезным виновником, вероятно, является наше приложение, а не Rails, но я пытаюсь выяснить, что здесь происходит во всех случаях ... так ... вот еще несколько конкретных вопросов:
что происходит с этими двумя огромными процессами httpd? Я ожидал, что от Passenger будет два больших процесса создания, но почему apache выглядит так?
Учитывая, что мне нужно выполнить профилирование использования памяти нашим приложением Rails, какие инструменты могут с этим помочь? Я знаю множество инструментов для профилирования производительности, тестирования производительности и т. Д., Но что можно сделать, чтобы определить, где используется память?
Все эти процессы запускают ваше приложение Rails. Все они относительно одинаковы по размеру, и я подозреваю, что если вы включите свои файлы конфигурации Apache / Passenger (или, по крайней мере, их части), мы увидим, что счетчик совпадает с количеством настроенных вами дочерних процессов. Я бы сначала посмотрел на приложение Rails, чтобы понять, почему оно использует так много оперативной памяти, и затем вернуться в Apache / Passenger.