NS_CACHE 配置参数定义以下对象中单个条目的最大保留时间:主机名/IP 地址高速缓存、服务高速缓存、用户高速缓存和组高速缓存。如果指定最大保留时间,数据库服务器可从高速缓存获取主机、服务、用户和组数据库服务器的信息。
在为特定高速缓存配置的时间之后或者重新配置该时间时,每个高速缓存条目都将到期。
网络名服务提供者(如 DNS)通常位于远程计算机上。要避免花费时间从网络名服务提供者返回信息,可使用 NS_CACHE 配置参数来指定最大保留时间,用于从某一个内部高速缓存中获取信息。GBase 8s 将在高速缓存中查找信息。如果该处没有此类信息,数据库服务器将查询操作系统以获取这些信息。
使用 GBase 8s 名称服务高速缓存机制可避免许多在操作系统中进行的查找,从而在可配置的时间内保留并复用检索到的每个信息段。
服务器从高速缓存获取信息的速度比查询操作系统更快。但是,如果将保留时间设置为 0 来禁用一个或多个这类高速缓存,那么数据库服务器将查询操作系统以获取主机、服务、用户或组信息。
作为 DBA,您可能希望在以下情况下修改 NS_CACHE 配置参数的设置:网络名服务提供程序在远程计算机上运行,或 MSC VP 在运行时的处理器使用量很大。
例如,可运行 onstat -g glo 命令,以在输出的 Individual virtual processors 部分中检查 msc VP 的使用情况。在以下输出样本中,usercpu 和 syscpu 列中显示的 msc 处理器使用量非常高。如果怀疑使用量高是因为 DNS 调用花费了过多时间,那么可使用操作系统命令来确定高使用量,然后修改 NS_CACHE 配置参数的设置。
Individual virtual processors: vp pid class usercpu syscpu total Thread Eff 1 2036 cpu 76.95 7.14 84.09 99.08 84% 2 2149 adm 0.00 0.00 0.00 0.00 0% 3 2151 LIC 0.00 0.00 0.00 0.00 0% 4 2260 lio 0.00 0.00 0.00 0.03 0% 5 2442 pio 0.00 0.00 0.00 0.00 0% 6 2443 aio 0.00 0.01 0.01 0.11 8% 7 2444 msc 14.18 14.64 28.82 199.91 14% 8 2446 fifo 0.00 0.00 0.00 0.00 0%
您还可能希望在以下情况下指定 NS_CACHE 信息:操作系统没有名称服务 (NS) 高速缓存,或禁用了操作系统 NS 高速缓存。
要将主机和服务连接的最大保留时间定义为 600 秒,并对用户和组数据库服务器连接禁用最大保留限制,请指定:
NS_CACHE host=600,service=600,user=0,group=0