10.2. 所需的缓存大小
dsconf monitor dbmon
命令可让您监控运行时的缓存统计信息。要显示统计,请输入:
# dsconf -D "cn=Directory Manager" ldap://server.example.com monitor dbmon
DB Monitor Report: 2022-02-24 10:25:16
--------------------------------------------------------
Database Cache:
- Cache Hit Ratio: 50%
- Free Space: 397.31 KB
- Free Percentage: 2.2%
- RO Page Drops: 0
- Pages In: 2934772
- Pages Out: 219075
Normalized DN Cache:
- Cache Hit Ratio: 60%
- Free Space: 19.98 MB
- Free Percentage: 99.9%
- DN Count: 100000
- Evictions: 9282348
Backends:
- dc=example,dc=com (userroot):
- Entry Cache Hit Ratio: 66%
- Entry Cache Count: 50000
- Entry Cache Free Space: 2.0 KB
- Entry Cache Free Percentage: 0.8%
- Entry Cache Average Size: 8.9 KB
- DN Cache Hit Ratio: 21%
- DN Cache Count: 100000
- DN Cache Free Space: 4.29 MB
- DN Cache Free Percentage: 69.8%
- DN Cache Average Size: 130.0 B
(可选)将 -b 后端
或 -x
选项传递给 命令,以显示特定后端或索引的统计信息。
如果您的缓存的大小足够大小,DN Cache Count
中的数字与 Cache Count
后端条目中的值匹配。另外,如果所有条目和 DN 都出现在其对应缓存中,则条目缓存计数 值与
DN Cache Count
的值匹配。
示例输出显示:
只有 2.2% 可用的数据库缓存被保留:
Database Cache: ... - Free Space: 397.31 KB - Free Percentage: 2.2%
但是,为了高效操作,至少需要 15% 免费的数据库缓存。要确定数据库缓存的最佳大小,请计算
/var/lib/dirsrv/slapd-instance_name/db/
目录(包括子目录和 changelog 数据库)的所有*.db
文件的大小,并为开销添加 12%。要设置数据库缓存,请参阅 使用命令行设置数据库缓存大小。
userroot
数据库的 DN 缓存很好:Backends: - dc=example,dc=com (userroot): ... - DN Cache Count: 100000 - DN Cache Free Space: 4.29 MB - DN Cache Free Percentage: 69.8% - DN Cache Average Size: 130.0 B
数据库的 DN 缓存包含 100000 记录,69,8% 的缓存是空闲的,内存中的每个 DN 需要 130 字节。
要设置 DN 缓存,请参阅 使用命令行设置 DN 缓存大小。
userroot
数据库的条目缓存统计表示应提高条目缓存值以提高性能:Backends: - dc=example,dc=com (userroot): ... - Entry Cache Count: 50000 - Entry Cache Free Space: 2.0 KB - Entry Cache Free Percentage: 0.8% - Entry Cache Average Size: 8.9 KB
条目缓存在此数据库 50000 记录中包括,仅保留 2 Kilobytes 的可用空间。要启用 Directory 服务器缓存所有 100000 DN,缓存必须增加到 890 MB (100000 DNs * 8,9 KB 平均条目大小)。但是,红帽建议将所需的最小大小放在下一个最高 GB,并加倍结果。在这个示例中,条目缓存应设置为 2 千兆字节。
要设置条目缓存,请参阅 使用命令行设置条目缓存大小。