7.4. 调整 DN 缓存大小

重要

红帽建议您使用内置缓存自动缩放功能来优化性能。只有在需要与自动调整的值分离时才会更改这个值。

nsslapd-dncachememsize 属性指定可辨识名称(DN)缓存的可用内存空间大小(以字节为单位)。DN 缓存与数据库的条目缓存类似,但其表只存储条目 ID 和条目 DN,这样可加快查找 renamemoddn 操作。

默认值

10485760 (10 MB)

有效范围

500000 - 18446744073709551615 (500 kB - (264-1))

条目 DN 位置

cn=database-name,cn=ldbm database,cn=plugins,cn=config

先决条件

  • LDAP Directory Manager 密码

流程

  1. (可选) 显示数据库后缀及其对应的数据库名称。

    [root@server ~]# dsconf -D "cn=Directory Manager" ldap://server.example.com backend suffix list
    dc=example,dc=com (userroot)

    这个命令显示每个后缀旁的后端数据库名称。在下一步中使用后缀的数据库名称。

  2. 为数据库设置 DN 缓存大小。这个示例将 DN 缓存设置为 20MB。

    [root@server ~]# dsconf -D "cn=Directory Manager" ldap://server.example.com backend suffix set --dncache-memsize=20971520 userroot
  3. 重启 Directory 服务器。

    [root@server ~]# systemctl restart dirsrv.target
  4. 监控 IdM 目录服务器的性能。如果它没有以理想的方式改变,请重复这个过程并将 dncache-memsize 调整为不同的值,或者返回到默认值 10MB。

验证步骤

  • 显示 nsslapd-dncachememsize 属性的新值,并将其设置为您所需的值。

    [root@server ~]# ldapsearch -D "cn=directory manager" -w DirectoryManagerPassword -b "cn=userroot,cn=ldbm database,cn=plugins,cn=config" | grep nsslapd-dncachememsize
    nsslapd-dncachememsize: 20971520

其他资源