Service manual

Types of Cache
Chapter 6 Tuning Cache Sizes 109
Directory Server moves pages between the database files and the databasecache to
maintain maximum database cache size. The actual amount of memory used by
Directory Server for database cachemay be up to 25 percent larger than the size
you specify, due to additional memory needed to manage the database cache itself.
When using a very large database cache, verify through empirical testing and by
monitoring memory use with tools such as
pmap(1) on Solaris systems that the
memory used by Directory Server does not exceed the size of available physical
memory. Exceeding available physical memory causes the system to start paging
repeatedly, resulting in severe performance degradation.
The
ps(1) utility, present on the UNIX platforms Directory Server supports, can
also be used with the
-p pid and -o format options to view current memory used by
a particular process such as Directory Server (
ns-slapd). OnWindows systems,
the Task Manager Processes tab page lists memory usage perprocess (
slapd.exe).
Refer to the operating system documentation for details.
For 32-bit servers, database cache size must in practice be limited to 2 GB or less.
Refer to the Sun ONE Directory Server Reference Manual for further details
concerning the valid range of
nsslapd-dbcachesize values.
Entry Cache
The entry cache holds recently accessed entries, formatted for delivery to client
applications. You specify entry cache size for a suffix (
nsslapd-cachememsize)
and the maximum number of entries (
nsslapd-cachesize). Entry cache is
allocated as needed.
Directory Server can return entries from an entry cache extremely efficiently, as
entriesstored in this cacheare already formatted. Entries in the database are stored
as a raw string of bytes, and must be formatted (and stored in the entry cache)
before delivery to client applications.
When specifying entry cache size, know that
nsslapd-cachememsize indicates
how much memory Directory Server requests from the underlying memory
allocation library. Depending on how the memory allocation library handles such
requests, actual memory usedmay be much larger than the effective amount of
memory ultimately available to Directory Serverfor the entry cache.
NOTE On Windows and AIX platforms, do not allocate more than 1 GB
(1,073,741,824 bytes) for database cache.