Брокер apache rockerMQ не запускается

Я пытаюсь пометить брокера RockerMQ, но я получил сообщение об ошибке:

Недостаточно памяти для продолжения среды выполнения Java.

При выделении собственной памяти (mmap) не удалось сопоставить 8589934592 байта для фиксации зарезервированной памяти.

Файл отчета об ошибке с дополнительной информацией сохраняется как:

/usr/local/soft/rocketMQ/incubator-rocketmq/distribution/target/apache-rocketmq/hs_err_pid6034.log

Предупреждение о виртуальной машине 64-разрядного сервера Java HotSpot(TM): INFO: os::commit_memory(0x00000005c0000000, 8589934592, 0) не удалось; ошибка = "Невозможно выделить память" (errno=12)

и я получил что-то из файла журнала ошибок о сообщении памяти:

Память: страница 4 КБ, физическая 4089840 КБ (551832 КБ свободна), подкачка 2621432 КБ (2621432 КБ свободна) vm_info: 64-разрядная серверная виртуальная машина Java HotSpot(TM) для JRE linux-amd64 (1.8.0_144-b01), построена на 21 июля 2017 21:57:33 от "java_re" с gcc 4.3.0 20080428 (Red Hat 4.3.0-8)

как я могу позволить брокеру rockerMQ работать на меня

2 ответа

Вы можете уменьшить размер кучи JVM. Откройте файл дистрибутива /bin/runbroker.sh вашего проекта и измените следующую строку

JAVA_OPT="${JAVA_OPT} -сервер -Xms8g -Xmx8g -Xmn4g"

как

JAVA_OPT="${JAVA_OPT} -сервер -Xms4g -Xmx4g -Xmn2g"

Теперь брокер будет генерировать только кучу 4G. Я надеюсь, что это решит вашу проблему. Теперь вы можете попробовать собрать и запустить.

Попробуйте изменить сценарии запуска оболочки, чтобы уменьшить размер кучи JVM в вашем dev/test env

Другие вопросы по тегам