Мы подключили приложение JVM (Scala), Java 1.7, и пытаемся решить, как распределить память. У нас есть одно приложение, работающее в контейнере докеров. Если контейнеру-докеру выделено 4 ГБ ОЗУ, мы должны выделить 4 ГБ (или, может быть, чуть меньше, чтобы быть в безопасности) для JVM?Распределение памяти JVM в контейнере Docker (LXC)
Как я понимаю, в контейнере докеров нет других процессов, кроме того, что вызывается из точки входа, поэтому нам не нужно беспокоиться об использовании памяти, отличной от JVM, - это правда, или более упрощение? Есть ли еще вопросы, которые мы должны задать?
EDIT Мы используем Mesos/Marathon развернуть докер изображение - Я считаю, что это установить ограничения на контрольную группу памяти (по крайней мере, это создает впечатление, что он делает), но я определенно могу быть неправильным.
Мы используем мезо/марафон, поэтому я считаю, что это ограничение памяти через группы (хотя я мог ошибаться). По крайней мере, у нас есть ожидания памяти для контейнеров докеров, так как многочисленные контейнеры будут развернуты бок о бок. Все добавьте некоторые пояснения, но я не уверен, что это действительно отвечает на мой вопрос - если он ограничен, мы должны максимизировать java-память до предела cgroup? – patwhite