2013-03-25 2 views
8

Я развернул заявку на Heroku. Я пользуюсь бесплатным сервисом.PG :: Ошибка: ОШИБКА: из памяти на Heroku

Довольно часто возникает следующая ошибка.

PG::Error: ERROR: out of memory 

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

Почему это происходит?

Спасибо.

Sam Kong

ответ

9

Если вы испытываете эти при выполнении запросов, ваши запросы являются сложными или неэффективными. У бесплатного уровня нет кеша, поэтому вы уже там.

Если вы получаете эти ошибки в противном случае, откройте тикет в https://help.heroku.com

+0

Ошибка длилась около 2 часов, и теперь она работает. –

2

heroku restart просто помог мне хотя

+0

'restart' будет иметь значение только здесь, если количество подключений велико и потребляет слишком много памяти, и в этом случае перезапуск должен очистить все эти соединения. Базы данных Heroku Postgres не запускаются на динамиках. 'restart' не перезапускает ваш экземпляр базы данных. – catsby

+0

да @catsby, в моем случае мне нужно запустить heroku pg: killall, и он возвращается к норме. в наши дни это происходит регулярно. любая идея, как этого избежать? – Emmanuel

+0

@ Emmanuel Если вам нужно регулярно перезагружать компьютер или pg: killall, то у вас может быть утечка соединения, то есть ваше приложение получает зависание/мертвые соединения и просто открывает новые. Для каждого подключения требуется память, и вы исчерпаете себя. – catsby

0

Если вы не в свободном уровне, его, возможно, потому, что вы используете слишком много памяти подключение к PG.

Рассмотрите приложение, работающее на нескольких динамиках, с несколькими процессами, каждый с большим количеством потоков, возможно, вы заполняете пул.

Кроме того, как показано в Heroku's Help Center, возможно, вы используете слишком много утверждений, которые не будут использоваться.