Архива требуется три разных типов памяти:
- Область памяти PermGen. Эта память используется для действующего программного кода. Обычно под эту область выделяется 192MB вне зависимости от количества физической оперативной памяти, имеющейся на компьютере. При установке системы, вам будет предложен именно этот объем.
- Область памяти Heap или "куча". Эта память используется для распределения объектов внутри исполнительной среды Java (англ. Java runtime environment).
- Виртуальная память. Эта память используется в качестве непосредственного буфера. В целях лучшей производительности, она находится за пределами исполнительной среды Java (JRE) и представляет всю оставшуюся оперативную память на вашем компьютере.
Примечание: ОЗУ - оперативное запоминающее устройство, часто такое сокращение используется для обозначения оперативной памяти компьютера.
ОЗУ = PermGen (программный код) + Куча + Виртуальная память (Прямой буфер) + Операционная система
Архива требуется как минимум 768 MB оперативной памяти, для маленьких инсталяций (500 почтовых ящиков) мы рекомендуем 1512 MB для системы. Чем больше ваш трафик, чем больше размер томов, тем больше оперативной памяти необходимо бля эффективной работы. Для системы обеспечивающей 20 000 пользователей, как минимум необходимо 8GB оперативной памяти, или больше. Пожалуйста, обратитесь к разделу системные требования для более точных рекомендаций.
Так как Архива использует виртуальную память за пределами JRE, необходимо как минимум 1/2 всей физически доступной оперативной памяти оставить свободной. Эта память потребуется для нормального функционирования операционной системы.
Рекомендованные настройки памяти
Linux
8 GIG ОЗУ - типичный SME сервер
Из расчёта, что на сервере доступно 8 GB оперативной памяти и вы хотите использовать все доступные ресурсы, распределите память следующим образом:
Область Java Heap ("куча"): 3072MB
Perm Gen (стек): 192MB
Виртуальная память: 4416MB
Операционная система: 512MB (headless-Linux c минимумом настроек)
1.5 GIG абсолютный минимум ОЗУ - маленький бизнес-сервер
Если ожидается, что Архива будет доступен весьма небольшой объем памяти и нужно сохранить как можно больше памяти свободной, используйте следующий порядок распределения:
Область Java Heap ("куча"): 384MB
Perm Gen (стек): 192MB
Виртуальная память: 448MB
Операционная система: 512MB (headless-Linux c минимумом настроек)
Windows
8 GIG ОЗУ - типичный SME сервер
Из расчёта, что на сервере доступно 8 GB оперативной памяти и вы хотите использовать все доступные ресурсы, распределите память следующим образом:
Область Java Heap ("куча"): 3008MB
Perm Gen (стек): 192MB
Виртуальная память: 2848MB
Операционная система: 2048MB
3 GIG абсолютный минимум ОЗУ - маленький бизнес-сервер
Если ожидается, что Архива будет доступен весьма небольшой объем памяти и нужно сохранить как можно больше памяти свободной, используйте следующий порядок распределения:
Область Java Heap ("куча"): 684MB
Perm Gen (стек): 192MB
Виртуальная память: 684MB
Операционная система: 1512MB
Как изменить настройки памяти
Проверить всю доступную оперативную память - Архива всегда будет использовать максимальный объем оперативной памяти, заданный вами.
Изменить размер кучи - Увеличить область heap ("кучу"), доступную для Архива.
Изменить размер области PermGen - Увеличить область perm gen (стек), доступную для Архива
Проверка всей доступной оперативной памяти
Прежде чем выделить больше памяти, пожалуйста, проверьте весь физический объем доступной оперативной памяти (RAM).
1) Windows 7:
a) Нажмите кнопку "Пуск" (Start)
b) В поле поиска напечатайте 'ram' без кавычек.
c) Кликните "Отображение размера ОЗУ на компьютере"
2) Linux
a) В терминате напечатайте команду "top".
Меняем размер кучи (область Heap)
Linux.
Выполните в терминале:
a) Запустите скрипт configure (настроек), как показано ниже:б) Перезагрузите сервер MailArchiva
- Windows
a) Кликните правой кнопкой по апплету Панели задач, кликните Настройка.
б) Выберите вкладку (иконку) Java.
в) Увеличьте максимальный объем доступной памяти.
г) Перезапустите сервис Архива (это требуется, чтобы изменения вступили в силу!)
Более подробную информацию можно найти здесь: http://java.sun.com/docs/hotspot/HotSpotFAQ.html#gc_heap_32bit.
После выделения большего количества памяти, не беспокойтесь, если процесс Архива будет использовать весь объем выделенной памяти. Это нормальное поведение для Java-приложений. Более подробную информацию о распределении памяти в Java-приложениях вы можете найти в
After allocating more memory, do not be alarmed if the Архива process is using the full extent of memory allocated. This is normal behaviour for Java based applications. For more information on common memory usage patterns in Java based applications, please refer to Out Of Memory.
Выделение большего или меньшего количества оперативной памяти
Если вам доступно большое количество физического RAM, нужно уведомить об этом Архива.
1) Linux
Из терминала:
a) Запустите скрип сonfigure, как показано ниже
b) Перезагрузите сервер Архива
2) Windows:
a) Right click task tray applet, click Configure...
b) Select Java tab
c) Enter a higher amount for the maximum memory size
d) Restart the Архива Service (this is required for the changes to take effect!)
Note: The following heap restrictions apply to Архива running on a 32 bit platform:
- Linux 32-bit: limited to a maximum of ~1960 MB
- Windows 32 bit: limited to a maximum of ~1512 MB
Refer to: http://java.sun.com/docs/hotspot/HotSpotFAQ.html#gc_heap_32bit for more information.
After allocating more memory, do not be alarmed if the Архива process is using the full extent of memory allocated. This is normal behaviour for Java based applications. For more information on common memory usage patterns in Java based applications, please refer to Out Of Memory.