0d0444587373bdecce45bb80de6c826eee238197mark<?xml version="1.0" encoding="UTF-8"?>
0d0444587373bdecce45bb80de6c826eee238197mark<!--
0d0444587373bdecce45bb80de6c826eee238197mark ! CCPL HEADER START
0d0444587373bdecce45bb80de6c826eee238197mark !
0d0444587373bdecce45bb80de6c826eee238197mark ! This work is licensed under the Creative Commons
0d0444587373bdecce45bb80de6c826eee238197mark ! Attribution-NonCommercial-NoDerivs 3.0 Unported License.
0d0444587373bdecce45bb80de6c826eee238197mark ! To view a copy of this license, visit
0d0444587373bdecce45bb80de6c826eee238197mark ! http://creativecommons.org/licenses/by-nc-nd/3.0/
0d0444587373bdecce45bb80de6c826eee238197mark ! or send a letter to Creative Commons, 444 Castro Street,
0d0444587373bdecce45bb80de6c826eee238197mark ! Suite 900, Mountain View, California, 94041, USA.
0d0444587373bdecce45bb80de6c826eee238197mark !
0d0444587373bdecce45bb80de6c826eee238197mark ! You can also obtain a copy of the license at
0d0444587373bdecce45bb80de6c826eee238197mark ! trunk/opendj3/legal-notices/CC-BY-NC-ND.txt.
0d0444587373bdecce45bb80de6c826eee238197mark ! See the License for the specific language governing permissions
0d0444587373bdecce45bb80de6c826eee238197mark ! and limitations under the License.
0d0444587373bdecce45bb80de6c826eee238197mark !
0d0444587373bdecce45bb80de6c826eee238197mark ! If applicable, add the following below this CCPL HEADER, with the fields
0d0444587373bdecce45bb80de6c826eee238197mark ! enclosed by brackets "[]" replaced with your own identifying information:
0d0444587373bdecce45bb80de6c826eee238197mark ! Portions Copyright [yyyy] [name of copyright owner]
0d0444587373bdecce45bb80de6c826eee238197mark !
0d0444587373bdecce45bb80de6c826eee238197mark ! CCPL HEADER END
0d0444587373bdecce45bb80de6c826eee238197mark !
0d0444587373bdecce45bb80de6c826eee238197mark ! Copyright 2011-2013 ForgeRock AS
0d0444587373bdecce45bb80de6c826eee238197mark !
0d0444587373bdecce45bb80de6c826eee238197mark-->
0d0444587373bdecce45bb80de6c826eee238197mark<section xml:id="prerequisites-file-descriptors"
0d0444587373bdecce45bb80de6c826eee238197mark xmlns='http://docbook.org/ns/docbook' version='5.0' xml:lang='en'
0d0444587373bdecce45bb80de6c826eee238197mark xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
0d0444587373bdecce45bb80de6c826eee238197mark xsi:schemaLocation='http://docbook.org/ns/docbook
0d0444587373bdecce45bb80de6c826eee238197mark http://docbook.org/xml/5.0/xsd/docbook.xsd'>
0d0444587373bdecce45bb80de6c826eee238197mark <title>Maximum Open Files</title>
0d0444587373bdecce45bb80de6c826eee238197mark
0d0444587373bdecce45bb80de6c826eee238197mark <indexterm>
0d0444587373bdecce45bb80de6c826eee238197mark <primary>File descriptors</primary>
0d0444587373bdecce45bb80de6c826eee238197mark <secondary>Requirements</secondary>
0d0444587373bdecce45bb80de6c826eee238197mark </indexterm>
0d0444587373bdecce45bb80de6c826eee238197mark
0d0444587373bdecce45bb80de6c826eee238197mark <para>
0d0444587373bdecce45bb80de6c826eee238197mark OpenDJ needs to be able to open many file descriptors,
0d0444587373bdecce45bb80de6c826eee238197mark especially when handling thousands of client connections.
0d0444587373bdecce45bb80de6c826eee238197mark
0d0444587373bdecce45bb80de6c826eee238197mark Linux systems in particular often set a limit of 1024 per user,
0d0444587373bdecce45bb80de6c826eee238197mark which is too low to handle many client connections to OpenDJ.
0d0444587373bdecce45bb80de6c826eee238197mark </para>
0d0444587373bdecce45bb80de6c826eee238197mark
0d0444587373bdecce45bb80de6c826eee238197mark <para>
0d0444587373bdecce45bb80de6c826eee238197mark When setting up OpenDJ for production use,
0d0444587373bdecce45bb80de6c826eee238197mark make sure OpenDJ can use at least 64K (65536) file descriptors.
0d0444587373bdecce45bb80de6c826eee238197mark
0d0444587373bdecce45bb80de6c826eee238197mark For example when running OpenDJ as user <literal>opendj</literal>
0d0444587373bdecce45bb80de6c826eee238197mark on a Linux system that uses
0d0444587373bdecce45bb80de6c826eee238197mark <filename>/etc/security/limits.conf</filename> to set user level limits,
0d0444587373bdecce45bb80de6c826eee238197mark you can set soft and hard limits by adding these lines to the file:
0d0444587373bdecce45bb80de6c826eee238197mark </para>
0d0444587373bdecce45bb80de6c826eee238197mark
0d0444587373bdecce45bb80de6c826eee238197mark <programlisting language="none">opendj soft nofile 65536
0d0444587373bdecce45bb80de6c826eee238197markopendj hard nofile 131072</programlisting>
0d0444587373bdecce45bb80de6c826eee238197mark
0d0444587373bdecce45bb80de6c826eee238197mark <para>
0d0444587373bdecce45bb80de6c826eee238197mark The example above assumes the system has
0d0444587373bdecce45bb80de6c826eee238197mark enough file descriptors available overall.
0d0444587373bdecce45bb80de6c826eee238197mark
0d0444587373bdecce45bb80de6c826eee238197mark You can check the Linux system overall maximum as follows.
0d0444587373bdecce45bb80de6c826eee238197mark </para>
0d0444587373bdecce45bb80de6c826eee238197mark
0d0444587373bdecce45bb80de6c826eee238197mark <screen>$ cat /proc/sys/fs/file-max
0d0444587373bdecce45bb80de6c826eee238197mark204252</screen>
0d0444587373bdecce45bb80de6c826eee238197mark</section>