2014-09-29 2 views
2

Итак, я нахожусь на крошечном сервере с небольшим количеством бара, чтобы сэкономить, и когда я пытаюсь запустить datomic, он злится на меня!Уменьшение использования служебной памяти

Launching with Java options -server -Xms1g -Xmx1g -XX:+UseG1GC -XX:MaxGCPauseMillis=50 
OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000b5a00000, 1073741824, 0) failed; error='Cannot allocate memory' (errno=12) 
# 
# There is insufficient memory for the Java Runtime Environment to continue. 
# Native memory allocation (malloc) failed to allocate 1073741824 bytes for committing reserved memory. 
# An error report file with more information is saved as: 
# /tmp/hs_err_pid1662.log 

Я сталкивалась с этим: https://groups.google.com/forum/#!topic/datomic/5_ZPZBFmCJg, который говорит, что мне нужно изменить болеечем просто object-cache-max в моем файле Transactor .properties. К сожалению, это не означает, что мне нужно дополнительно изменить. Помощь была бы оценена.

ответ

4

Вы можете прочитать документы по адресу capacity planning для получения дополнительной информации о настройке Datomic transactor. Как упоминает проблема группы, настройки -Xms1g и -Xmx1g запрашивают концерт ОЗУ. Документы я связан шоу часть решения в этом случае:

Вы можете установить максимальное количество доступной память процесс виртуальной машины Java с -Xmx флага на Java (или к бен /) по сделке.

Микрофоны не поддерживаются для развертывания в Датах, хотя некоторые из них успешно работают в дикой природе (очень низкие нагрузки на запись). Вы можете попробовать, например, такую ​​конфигурацию, как:

memory-index-threshold=16m 
memory-index-max=64m 
object-cache-max=128m 

С -Xmx установлен в 512 МБ. Это может занять дополнительные шаги в AWS и т. Д., Как сообщается here. Основной ответ заключается в том, что вам нужно уменьшить максимальный размер кучи и поэкспериментировать с уменьшенными значениями для каждой из других настроек памяти, чтобы соответствовать более низкой настройке.

2

Чтобы добавить некоторые конкретные детали, это то, что я должен был получить его работу:

В some-transactor.properties:

memory-index-threshold=16m 
memory-index-max=64m 
object-cache-max=128m 

Запустить Transactor с:

$ /path/to/bin/transactor -Xms512m -Xmx512m /path/to/some-transactor.properties

Смежные вопросы