chap-jvm-opts.xml revision 51607ea01068c9047391e4c8b46bc9dbd0edb7fd
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio<?xml version="1.0" encoding="UTF-8"?>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio<!--
be8a364e20bf080501e6b7b76664c33b649ffac7Jens Elkner ! CCPL HEADER START
be8a364e20bf080501e6b7b76664c33b649ffac7Jens Elkner !
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio ! This work is licensed under the Creative Commons
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio ! Attribution-NonCommercial-NoDerivs 3.0 Unported License.
be8a364e20bf080501e6b7b76664c33b649ffac7Jens Elkner ! To view a copy of this license, visit
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio ! http://creativecommons.org/licenses/by-nc-nd/3.0/
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio ! or send a letter to Creative Commons, 444 Castro Street,
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio ! Suite 900, Mountain View, California, 94041, USA.
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio !
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio ! You can also obtain a copy of the license at
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio ! trunk/opendj3/legal-notices/CC-BY-NC-ND.txt.
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio ! See the License for the specific language governing permissions
be8a364e20bf080501e6b7b76664c33b649ffac7Jens Elkner ! and limitations under the License.
be8a364e20bf080501e6b7b76664c33b649ffac7Jens Elkner !
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio ! If applicable, add the following below this CCPL HEADER, with the fields
d25c69509848853b0b15b93e3cc180cab81047acChristian Maeder ! enclosed by brackets "[]" replaced with your own identifying information:
d25c69509848853b0b15b93e3cc180cab81047acChristian Maeder ! Portions Copyright [yyyy] [name of copyright owner]
2578a6d217296401d347302c9104fee179bd0470Francisc Nicolae Bungiu !
d25c69509848853b0b15b93e3cc180cab81047acChristian Maeder ! CCPL HEADER END
6f52b2f195d946649597c21e5888c70ccfeeb81eChristian Maeder !
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio ! Copyright 2011 ForgeRock AS
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio !
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio-->
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio<chapter xml:id='chap-jvm-opts'
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio xmlns='http://docbook.org/ns/docbook'
43f8464f7a29c9609509b9c58925f0432263803dSimon Ulbricht version='5.0' xml:lang='en'
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio xsi:schemaLocation='http://docbook.org/ns/docbook http://docbook.org/xml/5.0/xsd/docbook.xsd'
2578a6d217296401d347302c9104fee179bd0470Francisc Nicolae Bungiu xmlns:xlink='http://www.w3.org/1999/xlink'
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio xmlns:xinclude='http://www.w3.org/2001/XInclude'>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio <title>Tuning JVM Options</title>
2578a6d217296401d347302c9104fee179bd0470Francisc Nicolae Bungiu
2578a6d217296401d347302c9104fee179bd0470Francisc Nicolae Bungiu <para>By default, OpenDJ installs with options appropriate for evaluation, not
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio for production.</para>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio <indexterm><primary>Java</primary><secondary>Settings</secondary></indexterm>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio
d25c69509848853b0b15b93e3cc180cab81047acChristian Maeder <variablelist>
c7d44bc923b7eb1a01abd095cd004030fee589eanotanartist <para>You can change JVM options for the server in the QuickStart installer,
4efb09a1f46a0b322633b729c9a9fd50bf270125Christian Maeder and alternatively using the Control Panel (Runtime Options > Java Settings),
b1d1bda618f7b145c28645f39b0ca651b8001ebanotanartist or with the <command>dsjavaproperties</command> command after editing the
4efb09a1f46a0b322633b729c9a9fd50bf270125Christian Maeder <filename>config/java.properties</filename> file.</para>
4efb09a1f46a0b322633b729c9a9fd50bf270125Christian Maeder
2e08f62eab7a9bd9becf08ce32871a39306e4798Szaben <varlistentry>
43f8464f7a29c9609509b9c58925f0432263803dSimon Ulbricht <term>Heap size</term>
b1854c6c6cbc17bd15e317b7b787b29b0b788e8cnotanartist <listitem>
ae0124755bed317b3e11afe1c6275fdb488807acnotanartist <para>The JVM heap size by default is either 256 MB or 1 GB.</para>
d25c69509848853b0b15b93e3cc180cab81047acChristian Maeder <para>In production, use at least a 2 GB heap (-Xms2G -Xmx2G).</para>
d25c69509848853b0b15b93e3cc180cab81047acChristian Maeder </listitem>
d25c69509848853b0b15b93e3cc180cab81047acChristian Maeder </varlistentry>
ae0124755bed317b3e11afe1c6275fdb488807acnotanartist
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio <varlistentry>
a933696a057bd1ad025d2d8e6b7079cc8e979d6eChristian Maeder <term>Server optimizations</term>
ebe1b5c42cea5468e66f088648362125cb3c2818Christian Maeder <listitem>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio <para>Use -server to select the HotSpot Server VM.</para>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio </listitem>
6f52b2f195d946649597c21e5888c70ccfeeb81eChristian Maeder </varlistentry>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio <varlistentry>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio <term>32-bit vs. 64-bit</term>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio <listitem>
c1cca90cf3d763a48705ddaeeffb3c2d82e9e37eSimon Ulbricht <para>For heap sizes over 4 GB on 64-bit systems use -d64.</para>
c1cca90cf3d763a48705ddaeeffb3c2d82e9e37eSimon Ulbricht </listitem>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio </varlistentry>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio <varlistentry>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio <term>Garbage collection</term>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio <listitem>
c1cca90cf3d763a48705ddaeeffb3c2d82e9e37eSimon Ulbricht <para>Use -XX:+UseConcMarkSweepGC to select the CMS garbage collector
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio for low GC pause times.</para>
2e08f62eab7a9bd9becf08ce32871a39306e4798Szaben </listitem>
c1cca90cf3d763a48705ddaeeffb3c2d82e9e37eSimon Ulbricht </varlistentry>
b1d1bda618f7b145c28645f39b0ca651b8001ebanotanartist
c1cca90cf3d763a48705ddaeeffb3c2d82e9e37eSimon Ulbricht <varlistentry>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio <term>New generation size</term>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio <listitem>
43f8464f7a29c9609509b9c58925f0432263803dSimon Ulbricht <para>If your directory handles high throughput, set the new generation
4efb09a1f46a0b322633b729c9a9fd50bf270125Christian Maeder size large enough for the JVM to avoid promoting short-lived objects
ea200f8484810ec6d7436f8c1b8286e7e61f4551notanartist into the old gen space (-XX:NewSize=512M).</para>
4efb09a1f46a0b322633b729c9a9fd50bf270125Christian Maeder </listitem>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio </varlistentry>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio </variablelist>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio</chapter>
4ffc423a7df8af7e7d7e563a15471da4505ddeb5ignazio