2012-03-27 2 views
0

У меня есть сервер VPS с Ubuntu 11.10 64bit и иногда, когда я исполняю subprocess.Popen команду я получаю я получаю слишком много об ошибке:Невозможно выделить память на Popen команды

OSError: [Errno 12] Cannot allocate memory

Config детали: Для каждого сайт у меня есть сайт апачский так: http://pastebin.com/mcew79sH , а также настройки и WSGI файл (как в той же папке, чем проект), как это: http://pastebin.com/hrrV4WTM

Я передаю аргументы POPEN конструктора в виде списка и с помощью close_fds = Правда, я также использую и stdin/stdout для связи e с PIPE для тех, которые мне нужны для чтения ответа.

Наконец это отслеживающий я получаю, когда появляется ошибка http://pastebin.com/FqXPHwhq

Сервер обслуживает около 25 сайтов с небольшим трафиком (вероятно, 5 из них имеют значительное ежедневное использование) мой VPS объем оперативной памяти 1024MB все из них выполнять базы данных PostgreSQL.

Все это началось, когда мы перенесли сайты из VPS, работающего под управлением Ubuntu Server 10.10. 32 бит до 11.10 64 бит.

Любая идея, как решить эту проблему?

---- EDIT ----

пс Окс ->http://synsa.synsa.com/site_media/process.txt

+2

Почему вы думаете, что это врет? –

+0

Я думал, что 1024 МБ будет более чем достаточно для менее чем 50 сайтов с не очень высоким трафиком, возможно, пришло время искать более дешевые альтернативы для Apache. – juanefren

ответ

0

Ну это просто. Похоже, что пришло время обновить vps или масштабировать настройки памяти postgres/apache/etc и получить итоговый результат.

+0

Ну ... конечно, мне было легче ... – juanefren

1

Некоторые поставщики VPS вычисляют границы памяти странными способами. Смотрите, если что описано в:

http://code.google.com/p/modwsgi/wiki/ApplicationIssues#Memory_Constrained_VPS_Systems

помогает вообще.

+0

Основная проблема заключалась в том, что каждый сайт потребляет гораздо больше ОЗУ, которое я планировал, даже если сайт даже не был посещен. – juanefren