В настоящее время у меня есть Linux-сервер с Java 1.6 и Apache Tomcat / 6.0.18 с памятью 512 МБ. В настоящее время я размещаю одно веб-приложение, но я планирую переместить еще три приложения в этот экземпляр Tomcat.
Мой файл setenv.sh:
JAVA_OPTS="-Xms16m -Xmx256m -XX:MaxPermSize=128m -Djava.awt.headless=true"
Когда я выполняю бесплатно -m
total used free shared buffers cached
Mem: 512 461 51 0 60 52
-/+ buffers/cache: 348 164
Swap: 127 3 124
Иногда используется память до 506 или около того.
Думаю, мне нужно обновить память. Я думал о 800 Мб или 1 Гб. Как вы думаете, это хорошая идея? Увижу ли я улучшение? Как мне настроить файл seteven.sh после обновления?
Сколько вам нужно, полностью зависит от архитектуры вашего приложения (приложений) и их требований. Добавление памяти - почти всегда хорошая идея. Трудно сказать, увидите ли вы улучшение, если добавите на сервер еще 2 приложения, которых сейчас нет, поскольку у вас не будет сопоставимой статистики. Если вы хотите увидеть улучшения, добавьте память перед добавлением дополнительных приложений. Параметры, которые вы используете для JAVA_OPTS, снова будут зависеть от требований к памяти ваших приложений.
Вопрос немного расплывчатый, поскольку это зависит от приложений, которые вы запускаете. Если вы можете увеличить объем памяти до гигабайта, вы должны увидеть некоторое улучшение, если есть некоторая нагрузка (если ничего другого, это даст вам больше свободы действий), и с текущими ценами на оперативную память я не думаю, что вам есть что терять. инвестируя в эти дополнительные 512.
В конце концов, вам действительно нужно просто наблюдать за производительностью, когда вы загружаете ее другими приложениями. Это будет зависеть от того, сколько людей используют ваш сервер и как были написаны приложения (интенсивный ввод-вывод? Требуется больше разделяемой или независимой памяти? И т. Д.)
Если бы я был вами, и у вас есть шанс улучшить память, дерзайте. Вы бы не пожалели об этом. Но чтобы ответить на ваш вопрос ... вам нужно попробовать и посмотреть.