Пример приложения Ruby (2.4.1) на Rails (4.2.8) , настроенного с Puma и развернутого на Heroku (cedar-16) . В настоящее время разрабатывается на Мохаве 10.14.5 MBP. Я нахожусь на миссии по сокращению использования памяти и недавно обнаружил jemallo c через этот пост . Я переустановил Ruby (используя RVM) с включенным jemallo c, что подтверждается следующим выводом - -lpthread -ljemalloc -lgmp -ldl -lobjc
. Я продолжил добавлять jemallo c gem и комплект, установленный без проблем. Я также установил Heroku buildpack и настроил необходимые переменные среды.
Однако из-за гема в моем Gemfile я не могу выполнить какие-либо команды rake / rails - rails c
возвращает следующую ошибку, после чего сразу же запускаются вентиляторы моей Ma c:
ruby(45487,0x10739c5c0) malloc: *** malloc_zone_unregister() failed for 0x7fff94a3f000
foreman start
застревает на * Preloading application
. Все проблемы vani sh & приложение работает нормально, если я удалю драгоценный камень.
Поскольку я не осведомлен о том, как работает сборка пакетов Heroku и как именно этот c запрограммирован точно, мои вопросы следующие :
- С добавленным buildpack-пакетом, действительно ли мне нужен гем, установленный в моем проекте?
- С добавленным сборочным пакетом, нужна ли мне версия Ruby, скомпилированная с помощью jemallo c?
- Если мне нужен гем, как мне избавиться от вышеупомянутой ошибки?