许多定期使用 IIS 的组织会重新启动 IIS 服务,以便重复利用每个应用程序域的 .NET 应用程序池。 只要 IIS 重新启动,会同时调用 .NET 代理以检测每个应用程序池中的应用程序。 初始启动时间会因所监控的应用程序和类的数量、代理文件的配置情况以及是否存在自定义 PBD 而有所不同。
使用 NativeProfiler 检测的代理的默认设置允许代理和应用程序服务器在合理的时间内启动。 要改善启动性能,您可以执行一些可选步骤。
如果要改进 .NET 代理的启动时间,请尝试执行以下任务:
默认情况下,代理会创建先前发现的指令组的内存缓存,其中包含受监控的类。 启动 IIS 时,代理会创建先前发现的类的缓存。 由于应用程序代码会监视新类,缓存将随时间不断增加。 默认情况下,内存缓存最多可存储 5000 个类名。 如果缓存大小达到此限制,代理将在 NativeProfiler 日志文件中记录一个条目,指出缓存已饱和。
您可以使用 IntroscopeAgent.profile 文件中的 introscope.nativeprofiler.directivematching.cache.max.size 属性增加或减少缓存的大小。 如果缓存存储 5000 个以上的类名,增大该值可以改进启动时间。 但是,增大该值会增加代理的内存开销。 减小该属性值可减少代理的内存开销。 监控的类少于 5000 个或停止监控大指令组时,应适当减少该值。
如果对同一组中的类使用 IdentifyInheritedAs 指令,则可以启用代理以便最为高效地使用继承层次结构。
|
版权所有 © 2013 CA。
保留所有权利。
|
|