File: /home/posscale/subdomains/Phone_directories/docs/manual/apis02.html
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Performance issues</title><link rel="stylesheet" type="text/css" href="style.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="LDAP Account Manager - Manual"><link rel="up" href="api.html" title="Appendix�I.�Troubleshooting"><link rel="prev" href="api.html" title="Appendix�I.�Troubleshooting"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Performance issues</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="api.html">Prev</a>�</td><th width="60%" align="center">Appendix�I.�Troubleshooting</th><td width="20%" align="right">�</td></tr></table><hr></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp52072752"></a>Performance issues</h2></div></div></div><p>LAM is tested to work with 10000 users with acceptable
performance. If you have a larger directory or slow hardware then here
are some points to increase performance.</p><div class="literallayout"><p><br>
</p></div><p>The first step is to check if performance problems are caused by
the LAM web server or the LDAP server. Please check which machine
suffers from high system load (CPU/memory consumption).</p><p>High network latency may also be a problem. For large
installations please make sure that LAM web server and LDAP server are
located in the same building/server room.</p><p>If you run LAM on multiple nodes (DNS load balancing/hardware load
balancer) then also check the <a class="link" href="aph.html" title="Appendix�H.�Clustering LAM">clustering
section</a>.</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp52077120"></a>LDAP server</h3></div></div></div><p><span class="bold"><strong>Use indices</strong></span></p><p>Depending on the queries it may help to add some more indices on
the LDAP server. Depending on your LDAP software it may already
suggest indices in its log files. See <a class="link" href="apc.html#indices">here</a> for typical OpenLDAP indices.</p><div class="literallayout"><p><br>
</p></div><p><span class="bold"><strong>Reduce query results by splitting LDAP
management into multiple server profiles</strong></span></p><p>If you manage a very large directory then it might already be
separated into multiple subtrees (e.g. by country, subsidiary, ...).
Do not use a single LAM server profile to manage your whole directory.
Use different server profiles for each separated LDAP subtree where
possible (e.g. one for German users and one for French ones).</p><div class="literallayout"><p><br>
</p></div><p><span class="bold"><strong>Limit query results</strong></span></p><p>LAM allows to set an <a class="ulink" href="general_settings" target="_top">LDAP search
limit</a> for each server profile. This will limit the number of
entries returned by your LDAP server. Use with caution because it can
cause problems (e.g. with automatic UID generation) when LAM is not
able to read all entries.</p><div class="screenshot"><div class="mediaobject"><img src="images/configProfiles4.png"></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp52086848"></a>LAM web server</h3></div></div></div><p><span class="bold"><strong>Install a PHP
accelerator</strong></span></p><p>There are tools like <a class="ulink" href="http://www.php.net/manual/en/book.apc.php" target="_top">APC</a> (free) or
<a class="ulink" href="http://www.zend.com/en/products/server/" target="_top">Zend
Server</a> (commercial) that provide caching of PHP pages to
improve performance. They will reduce the time for parsing the PHP
pages and IO load.</p><p>This is a simply way to enhance performance since APC is part of
most Linux distributions.</p><p>If you use APC then make sure that it uses enough memory (e.g.
"apc.shm_size=128M"). You can check the memory usage with the file
apc.php that is shipped with APC.</p><div class="screenshot"><div class="mediaobject"><img src="images/apc.png"></div></div><div class="literallayout"><p><br>
</p></div><p><span class="bold"><strong>Disable session
encryption</strong></span></p><p>LAM encrypts sensitive data in your session files. You can <a class="link" href="ch03.html#sessionEncryption">disable</a> it to reduce CPU
load.</p><div class="screenshot"><div class="mediaobject"><img src="images/configGeneral1.png"></div></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="api.html">Prev</a>�</td><td width="20%" align="center"><a accesskey="u" href="api.html">Up</a></td><td width="40%" align="right">�</td></tr><tr><td width="40%" align="left" valign="top">Appendix�I.�Troubleshooting�</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">�</td></tr></table></div></body></html>