通过并行安装适用于 Microsoft SQL Server 2000 Web Release 1 的 XML,Microsoft SQLXML 2.0 和 SQLXML 3.0,可以使用以下注册表项显式控制所有版本中的架构缓存:
Web 版本 1:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SQLXMLX\SchemaCacheSize
SQLXML 2.0:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SQLXML2\SchemaCacheSize
SQLXML 3.0:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SQLXML3\SchemaCacheSize
谨慎
错误地编辑注册表可能会严重损坏系统。 在更改注册表之前,建议在计算机上备份任何值数据。
有关并行安装的详细信息,请参阅 SQLXML 4.0 SP1 中的新增功能。
架构缓存显著提高了 XPath 查询的性能。 对映射架构执行 XPath 查询时,架构将存储在内存中,并且必要的数据结构内置在内存中。 如果设置了架构缓存,架构将保留在内存中,从而提高后续 XPath 查询的性能。
可以通过在注册表中添加上述键来设置架构缓存大小
架构大小是根据可用内存和正在使用的架构数设置的。 默认 SchemaCacheSize 大小为 31。 如果设置 SchemaCacheSize 更高,则使用更多内存。 因此,如果架构访问看起来很慢,则可以增加缓存大小;如果内存不足,则可以减小缓存大小。
出于性能原因,建议将 SchemaCacheSize 设置为高于通常使用的映射架构数。 随着架构数量的增加,如果 SchemaCacheSize 小于你拥有的架构数,则性能会下降。
注释
在开发过程中,建议不要缓存架构,因为对架构的更改不会反映在缓存中约两分钟。