Приложение Rails не может обрабатывать несколько пользователей - PullRequest
0 голосов
/ 07 декабря 2011

У меня развернуто приложение rails на сервере. RHEL 6.1, ruby ​​1.8.7, рельсы 3.0.9. Микроэкземпляр EC2, оперативная память 590 МБ (это кажется странным, но неважно).

В настоящее время он работает в режиме разработки с sqlite3, хотя у меня он был в производстве и подключен к postgresql. Проблема сохраняется все время.

В принципе, он работает нормально локально и работает нормально, когда я один использую его. Я могу загрузить кучу вкладок с сайта без особого снижения производительности. Я не уверен, что я не просто облагаю налогом достаточно, но кажется, что как только второй пользователь пытается использовать сайт, он замедляется и вылетает. Я знаю, что в этой системе недостаточно памяти, но действительно ли Rails так обременителен?

При использовании приложения будет появляться около 4-6 процессов ruby, каждый из которых использует до ~ 18% памяти. Они имеют тенденцию сохраняться в течение нескольких минут.

Пожалуйста, взгляните на мой журнал Apache. Пожалуйста, игнорируйте строки ActiveRecord :: StatementInvalid. Это не связанная проблема: http://project.touchstudios.net/error_log.txt

Я не уверен, что это проблема в моем приложении или конфигурации. Это была очень неприятная проблема. Может ли кто-нибудь предложить мне план действий здесь? Я предоставлю любую информацию, которая может помочь.

Спасибо

1 Ответ

1 голос
/ 07 декабря 2011

Ну, это как-то просто.Что-то об этом сайте, но я, как правило, довольно быстро отвечаю на свой вопрос после того, как задаю его.

Микроэкземпляры EC2 просто не кажутся хорошими.Я предполагаю, что есть только определенное количество накладных расходов.Я запустил большой экземпляр, и рубиновые процессы, похоже, не растут бесконтрольно.Я не хотел просто бросать больше оборудования на проблему;Я не хотел скрывать более глубокую проблему, но теперь я уверен, что микроэкземпляры просто не подходят для приложения рельсов среднего размера.

...