Performance issues
Prev | Appendix I. Troubleshooting |

## Performance issues

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.

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).

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.

If you run LAM on multiple nodes (DNS load balancing/hardware load balancer) then also check the clustering section.

### LDAP server

Use indices

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 here for typical OpenLDAP indices.

Reduce query results by splitting LDAP management into multiple server profiles

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).

Limit query results

LAM allows to set an LDAP search limit 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.

### LAM web server

Install a PHP accelerator

There are tools like APC (free) or Zend Server (commercial) that provide caching of PHP pages to improve performance. They will reduce the time for parsing the PHP pages and IO load.

This is a simply way to enhance performance since APC is part of most Linux distributions.

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.

Disable session encryption

LAM encrypts sensitive data in your session files. You can disable it to reduce CPU load.

Prev | Up |
Appendix I. Troubleshooting | Home |