管理与程序设计指南
高速缓存管理器管理系统中一个或多个高速缓存。这些高速缓存中的每一个都包含动态生成的
HTML 页的内容。要配置高速缓存管理器和每个高速缓存,必须更新高速缓存管理器配置文件
cachemgr.cnf 中的关键字值。
高速缓存管理器配置文件中包含两种类型的节:高速缓存管理器节和高速缓存定义节。下列步骤
描述如何为应用程序定制这两个类型的节。
通过指定允许的关键字的值,来定义高速缓存管理器节。所有关键字都是可选的;除非您不希望接受缺省值,否则不必指定它们。
要定义高速缓存管理器:
- 指定高速缓存管理器日志文件的名称。日志显示所有高速缓存的所有事务的动作,
并供调试和问题分析来使用。
缺省情况是将信息写至控制台。
语法:
log=path
其中,path 是高速缓存文件的路径与文件名称。
提示:要指定每个高速缓存的日志文件,可在高速缓存定义节中使用 tran-log 关键字。
- 指定高速缓存管理器用于接受请求的 TCP/IP 端口号码。只对于从远程机上连接高速
缓存管理器时,才使用该端口号码。
此值必须与 DTW_CACHE_PORT 配置变量
在 Net.Data 初始化文件中指定的端口号码匹配。用以下方法确定缺省值:
- 高速缓存管理器在路径 /etc/services
中检查与名称 ibm-cachemgrd 关联的值。如果找到此值,高速缓存管理器将使用此值
。如果找不到,则使用下一种方法。
- 高速缓存管理器使用缺省端口 7175。
语法:
port=port_number
其中 port_number 是唯一的 TCP/IP 端口号。
- 以秒为单位指定一个最大时间长度,在此时间内,高速缓存管理器应当允许暂挂的读取操
作保持活动。如果超过此时间,高速缓存管理器卸下连接。
缺省值是 30 秒。
语法:
connection-timeout=seconds
其中 seconds 是秒数,用于暂挂的读取操作应当活动的时间长度。
- 指定是否记录信息。
缺省值是 no 或 off。
语法:
logging=yes|on|no|off
其中:
- yes|on
- 指示需要进行记录。
- no|off
- 指出不应记录。
- 指定是否环绕日志。
缺省值是 no。如果指定为 yes,则在达到最大大小时当前日志将关闭
(参见下面的 log-size),文件具有文件类型 .old,新的日志被打开。只维护一代
日志文件(现存的 .old 文件被覆盖)。
语法:
wrap-log=yes|no
其中:
- yes
- 指定环绕日志。
- no
- 指定不环绕日志。
- 指定最大大小,日志最多可为此大小(如果指定了环绕日志的话)。
缺省值是
64000。
语法:
log-size=bytes
其中
bytes 是最大大小的字节数。
- 指定要写入日志的信息级别。当这些值包含在 trace_flag_definitions 列表中时
,则已被设置,不再需要进行任何设置。
缺省值是只记录高速缓存管理器启动和关闭信息。
语法:
trace-flags=trace_flag_definitions
其中:
- D_ALL
- 启用所有跟踪标志。
- D_NONE
- 禁用所有跟踪标志
示例:启用指定所有跟踪标志的跟踪标志:
trace=flags=D_ALL
节的示例:一个有效的配置管理器节:
cache-manager {
port = 7175
connection-timeout = 60
logging = off
log = /local/netdata/cachemgr/logs/cachemgr.log
wrap-log = yes
log-size = 32KB
}
通过指定允许的关键字的值,来定义高速缓存定义节。大部分关键字都是可选的,除非您不希
望使用缺省值,否则不必指定它。
要定义一个高速缓存:
- 指定要保持高速缓存页的路径和目录名。就启动来说,包含此目录的文件系统必须至少象 fssize (参见下面) 的值
一样大;否则高速缓存将不能启动。可将此值指定为一个绝对路径名或对应于高速缓存管理器启动
的路径的相对路径名。
必需的。
语法:
root=path_name
其中:
- path_name
- 是高速缓存页所存储的绝对或相对的目录和路径名。
- 指定在高速缓存管理器启动时是否激活当前高速缓存。
不是必需的;缺省值是
yes。如果设置为 no,则高速缓存被定义在高速缓存管理器中但是不激活。以后您可以用
cacheadm 命令来激活它。
语法:
caching=yes|no
其中:
- yes
- 指出当高速缓存管理器启动时将激活高速缓存。
- no
- 指出当高速缓存管理器启动时将不激活高速缓存。
- 指定由当前高速缓存中的页在文件系统中所使用的最大空间。超过最大空间数时,高速缓存
管理器从最旧的页开始删除足够的页,以将高速缓存所占有的总空间限制在一个极限之内。您可以
通过将该值设置为一个很大的数目来有效禁用对条目的自动清除;但是如果超过物理文件系统空间
,则试图将新的页面添加到高速缓存将会失败。
不是必需的;缺省值是 0 (没有高速缓存至磁盘)。
语法:
fssize=nnB|nnKB|nnM
其中:
- nnB
- 是字节数;例如 5000B。
- nnKB
- 是千字节数;例如 640KB。
- nnMB
- 是兆字节数;例如 30MB。
- 指定由该高速缓存中的所有页面使用的最大内存数。超过最大内存数时,高速缓存
管理器从最旧的页开始删除足够的页,以将高速缓存所占有的总内存限制在一个范围之内。您可以
通过将该值设置为一个很大的数目来有效禁用对页面的自动清除;但是如果 cachemgrd 过程消耗太多内存,操作系统可能会终止它。
不是必需的;缺省值是 1MB。
语法:
mem-size=nnB|nnKB|nnMB
其中:
- nnB
- 是字节数;例如 5000B。
- nnKB
- 是千字节数;例如 640KB。
- nnMB
- 是兆字节数;例如 30MB。
- 指定了一个页面可在高速缓存中保持的最大时间长度。超过此值时,高速缓存管理器将页面标
记为期满,但是除非到达 fssize (如果高速缓存在磁盘上) 或
memsize (如果高速缓存在内存中) 极限,否则不删除
该页面。如果到达 memsize 或 fssize 极限,则高速缓存管理器在所有其他页面之前删除标记为期满的页。可以使用
check_expiration 关键字来禁用lifetime检查。
必需的:否;缺省值是 5 分钟。
语法:
lifetime=time_length
其中:
- nnS
- 秒数;例如 600S。
- nnM
- 分钟数;例如 20M。
- nnH
- 小时数;例如 30H。
- 指定是否将高速缓存页标记为期满并执行寿命检查。
不是必需的;缺省值是
yes,缺省寿命长度是 60 秒。还可将此值设置为一个时间长度,以指出
yes 值并说明一个项目可在高速缓存中保持的最大时间长度。设置为 no 时,高速缓存页不标记为期满,并且不执行寿命检查。
语法:
check-expiration=yes|nnS|nnM|nnH|no
其中:
- yes
- 指出高速缓存管理器执行寿命检查,并且高速缓存页标记为期满。
- nnS
- 秒数;例如 600S。
- nnM
- 分钟数;例如 20M。
- nnH
- 小时数;例如 30H。
- no
- 指出高速缓存管理器不执行寿命检查,并且高速缓存页不标记为期满。
- 指定一个高速缓存的页面可在内存高速缓存中占用的最大空间量。如果对于内存来说页面太大
,则选择文件高速缓存。如果存在足够的空间,高速缓存管理器将在文件高速缓存中擦除高速缓存页面。如果页面不匹配文
件高速缓存,则高速缓存的试图将失败。如果页面小于 datum_memory_limit 值
(cacheobj-memory-limit),但是如果高速缓存没有足够的空间,则将从内存高速缓存中删除最早的
高速缓存页面以容纳新的页面。
不是必需的;缺省值是 1KB。
语法:
datum-memory-limit (cacheobj-memory-limit)=nnB|nnKB|nnMB
其中:
- nnB
- 是字节数;例如 5000B。
- nnKB
- 是千字节数;例如 640KB。
- nnMB
- 是兆字节数;例如 30MB。
- 指定一个高速缓存页面可在文件高速缓存中占用的最大空间量。如果一个页面小于
datum_disk_limit,但是在文件高速缓存中没有余留空间,则将从文件高速缓存中删除最早的
高速缓存页面以容纳新的页面。
不是必需的;缺省值是 1KB。
语法:
datum-disk-limit (cacheobj-space-limit)=nnB|nnKB|nnMB
其中:
- nnB
- 是字节数;例如 5000B。
- nnKB
- 是千字节数;例如 640KB。
- nnMB
- 是兆字节数;例如 30MB。
- 指定了创建统计记录的时间。如果设置为 0,则不写下统计记录。
不是必需的;缺省值是 0(无任何统计信息)。
语法:
stat-interval = nnS|nnM|nnH
其中:
- nnS
- 秒数;例如 600S。
- nnM
- 是分钟数;例如 1M。
- nnH
- 是小时数;例如 3H。
- 指定一个文件的路径和名称,该文件用于记录当前高速缓存的统计值。
当 stat-interval 的值大于 0 时是必需的。
语法:
stat-files=filename
其中 filename 是记录统计文件的路径和名称。
- 指定每次写日志文件时,统计计数器是否应当复位。
不是必需的;缺省值是
yes。
语法:
reset-stat-counters=yes|no
其中:
- yes
- 复位统计计数器。
- no
- 不复位统计计数器。
- 定义存放每个高速缓存的事务日志的路径与文件名称。高速缓存事务日志文件独立与高速缓存
管理器日志文件,后者用于记录整个高速缓存管理器的活动。
必需的;如果不指定,就不创建
高速缓存的事务日志。
语法:
tran-log=filename
其中 filename 是每个高速缓存的事务日志的路径和文件名。
- 指定是否在高速缓存管理器首次启动时打开高速缓存的事务日志。除非已通过 tran-log 参数
指定了一个有效事务日志文件,否则忽略此参数。如果在高速缓存管理器配置文件中已经指定
tran-log 值,则当高速缓存管理器守护程序正在运行时,可使用 cacheadm 命令来激活事务日志。
不是必需的;缺省值是
no。
语法:
tran-logging=yes|on|no|off
其中:
- yes|on
- 指示需要进行记录。
- no|off
- 指出不应执行记录。
- 指定是否应当环绕事务登记。
不是必需的;缺省值是
yes。如果指定为 yes,则在达到最大大小时当
前日志将关闭(参见下
面的 tran-log-size),具有文件类型 .old,新的日志被打开。只维护一代日志
(现存的 .old 文件被覆盖)。
语法:
wrap-tran-log=yes|no
其中:
- yes
- 指定环绕日志。
- no
- 指出不环绕日志。
- 以字节为单位指定最大大小,如果指定了 wrap-tran-log,
则允许事物日志多至这般大小。
不是必需的;缺省值是 64000。
语法:
tran-log-size=bytes
其中
bytes 是最大大小的字节数。
节的示例:高速缓存的一个有效的高速缓存定义节:
cache0
{
root = /locale/netdata/cachemgr/caches/cache0
caching = on
mem-size = 10MB
fs-size = 1MB
datum-memory-limit = 200KB
datum-disk-limit = 1MB
lifetime = 6000000
check-expiration = 999999
tran-logging = no
tran-log-size = 10000
wrap-tran-log = yes
tran-log = /ocale/netdata/cachemgr/logs/tran.log
}
[ 页的顶部 | 上一页 | 下一页 | 目录 | 索引 ]