第 5 章 设置目录服务器线程数量
用于处理同时连接的线程目录服务器数量会影响服务器的性能。例如,如果所有线程都忙于处理耗时的任务,如 添加操作
,则会排队新的传入连接,直到空闲线程可以处理请求。
如果服务器提供少量的 CPU 线程,配置更多线程可以提高性能。但是,在具有大量 CPU 线程的服务器上,设置太高的值不会进一步提高性能。
默认情况下,目录服务器使用自动调整设置来计算线程数量。这个数字基于实例启动时服务器的硬件资源。
避免手动设置线程数量。改为使用 auto-tuning 设置。
启用自动线程调整后,Directory 服务器使用以下优化的线程数量:
CPU 线程号 | 目录服务器线程号 |
---|---|
1-16 | 16 |
17-512 | 目录服务器线程号与系统中的 CPU 线程号匹配。例如,如果您的系统有 24 个 CPU 线程,则目录服务器使用 24 个线程。目录服务器线程的最大数量为 512。 |
512 及更多 | 512.目录服务器应用推荐的线程数。 |
5.1. 使用命令行启用自动线程调整
默认情况下,目录服务器根据可用硬件自动设置线程数量。然而,在某些情况下,您可以使用命令行手动启用此自动调整功能。
流程
要启用自动调整功能,请使用以下命令将
nsslapd-threadnumber
属性值设为-1
:# dsconf -D "cn=Directory Manager" ldap://server.example.com config replace nsslapd-threadnumber="-1" Successfully replaced "nsslapd-threadnumber"
验证
使用以下命令验证 Directory 服务器现在使用的 tread 数量:
# dsconf -D "cn=Directory Manager" ldap://server.example.com config get nsslapd-threadnumber nsslapd-threadnumber: 16
注意命令检索目录服务器根据正确的硬件资源计算的线程数量。