Pull to refresh

Comments 9

Эти нативные исполнимые файлы запускаются быстрее, требуют меньше памяти и не требуют установленной JVM. 

Насколько я помню, потребление памяти там "в принципе такое же", как у обычной программы под обычной JVM - т.е. при старте выделяется хип, и размер этого хипа не будет в общем случае меньше от того, что вы скомпилируете GraalVM. Ну то есть, я бы тут уточнил слегка, о какой памяти идет речь, и какое именно потребление уменьшится.

Ну и насчет запуска быстрее - есть же в новых JDK возможность собрать образ с загруженными классами, который тоже стартует существенно быстрее (по понятным причинам загрузка множества классов из множества jar-ов - это не быстро). Было бы неплохо сравнивать время старта в таком режиме. Ну т.е. я про jpackage, если что.

Спасибо за вопрос. Провел серию тестов производительности с использованием JMH для оценки времени запуска и операционной готовности различных конфигураций контейнеров Kafka, статью дополнил.
Для оценки памяти я использовал docker stats.

Я возможно про память недостаточно четко изложил свою мысль. Давайте чуть поясню - я про то, что если мы в heap память приложения скажем хотим загрузить гигабайт данных каких-то, и использовать ее как кеш, то этот гигабайт не изменится, если собрать все граалем, правда же? Ну т.е. когда вы пишете про уменьшение потребления памяти - было бы очень неплохо уточнить, о какой памяти идет речь.

В статье проводится сравнение между "EmbeddedKafka с GraalVM" и confluentinc/cp-kafka. При этом разницу в объеме используемой памяти и скорости запуска следует рассматривать именно в рамках этого контекста. Я согласен с тем, что только использование GraalVM не всегда может привести к значительной разнице в потреблении памяти, но в случае скорости запуска влияние может быть значительным. Следует также учитывать, что анализ ведется в контексте последовательного запуска относительно простых интеграционных тестов, где требуется минимальная ресурсная конфигурация для запуска.

Я в целом и не спорю. Просто это может быть стоило чуть яснее сформулировать. Ну т.е. вы декларировали что хотите ускорить запуск вот этого проекта и снизить потребление - вы именно это померяли, это можно считать что доказано. А в целом - ну там как получится, другие проекты могут повести себя иначе.

Я подумаю над тем, как это лучше переформулировать. Дополнительно приложил анализ логов GC, надеюсь это поможет улучшить представление.

К сожалению запустить и проверить в деле не удалось. В тестовой среде контейнер-Бин не создается. Хотя просто в докере запускается без проблем

Большое спасибо! Проблема была действительно в версии, все отлично работает.

Sign up to leave a comment.

Articles