У меня есть запрос для установки сервера Linux (предпочтительно сервер Ubuntu 64bit), и Java (64 бита) в следующую машину:
Проблема состоит в том, как настроить систему и Java, потому что мне нужна JVM для использования больше чем 4 ГБ памяти.
Это не может быть распределено на многих виртуальных машинах. Существуют данные больше чем 4 ГБ шириной, и это должно быть в памяти, потому что жесткий диск является медленным, и производительность очень важна.
Это - конфигурация и вопрос о производительности, и я интересуюсь комментариями, если у кого-либо есть опыт?
большое спасибо за помощь мне на этом...
JVM (особенно 64-битная) без промедления забирает всю память, и 4 Гбайт не проблема. Просто установите 64-разрядную версию Ubuntu, и пакет default-jre также будет 64-разрядным.
Также обратите особое внимание на то, как ваши данные хранятся в памяти. Опять же, 64-битный JDK очень голоден для памяти из-за более высоких накладных расходов на указатели и т. Д., Поэтому, если вы распределяете эти 4 Гб небольшими порциями в некоторой структуре данных, 8 Гб будет недостаточно.
64-битная JVM не должна иметь никаких проблем с гигантскими кучами, конечно, намного большими, чем ваша доступная RAM. Просто увеличьте размер кучи при запуске JVM, например:
java -Xmx6g
Раньше вам приходилось указывать 64-битный флаг (с помощью -d64
), но я не думаю, что это больше необходимо.
32-битные JVM могут управлять примерно 3 ГБ кучи.
Если вы установите 64-битную Ubuntu, я полагаю, что
sudo apt-get install sun-java6-jdk
это даст вам 64-битную Java.
EDIT: 64-битная Java может дать вам столько памяти, сколько вам нужно с соответствующими переключателями. Ограничением являются 32-битные JVM, которые не могут превышать 2-4 Гб в зависимости от операционной системы.
Ответ скаффмана, который предоставляет требуемый флаг для выделения 6 ГБ памяти, правильный. Если «g» не помогает, вы можете попробовать 6000 м (см. Ссылку ниже для получения подробной информации о флагах / платформе)
Для других опций вы можете найти полезную информацию обо всех доступных опциях для виртуальной машины Java HotSpot здесь.
http://java.sun.com/javase/technologies/hotspot/vmoptions.jsp
(Доступны параметры поведения и производительности. На этой странице также доступны ссылки для конкретных платформ)