我可以使用哪些工具来测量 Active Directory 对查询的响应时间?

我可以使用哪些工具来测量 Active Directory 对查询的响应时间?

Windows Server 2008/Active Directory

有没有办法测量 AD 查询的响应时间?我有一个应用程序,用于检查用户是否存在于 AD 中,最近,这似乎需要一段时间(30-40 秒)。我想知道延迟是在 AD 服务器端还是在应用程序本身。

这是最好的做法吗csvde?或者是否有可用于测量 AD 查询性能的特殊工具?如果第三方实用程序能够更全面地展示正在发生的事情,我愿意使用它。

答案1

怎么样

Measure-Command {get-aduser -filter * -properties *|select $_.givenname,$_.sn,$_.mail, $_.mailnickname}

或者类似的东西(取决于您的应用程序查询的属性等)?

答案2

如果您对 AD 方面存在怀疑,则可以使用新功能在事件日志中提供详细的性能:

修补程序将性能数据添加到 Windows Server 2012/2008 R2 SP1 中的 Active Directory 事件日志
http://support.microsoft.com/kb/2800945

本文介绍了一种修补程序,该修补程序将性能数据添加到基于 Windows Server 2012 或 Windows Server 2008 R2 Service Pack 1 (SP1) 的域控制器上的 Active Directory 事件日志中。安装此修补程序后,域控制器将启用其他筛选器来记录以下性能数据:

Field   Description
callTime
    Call time (in milliseconds)
entriesReturned
    Entries returned
entriesVisited
    Entries visited
filter
    Used filter
index
    Used indexes
pagesReferenced
    Pages referenced
pagesRead
    Pages read from disk
pagesPreread
    Pages pre-read from disk
pagesDirtied
    Clean pages modified
pagesRedirtied
    Dirty pages modified

注意:您可以收集 Active Directory 事件日志中的性能数据来分析故障的原因。

安装此修补程序后,解决 Lsass.exe 进程中 CPU 使用率意外过高和登录时间过长的问题所需的工作量会减少。更具体地说,在“症状”部分中描述的其他筛选器将添加到事件 ID 1644。设置字段工程日志记录级别后,当轻型目录访问协议 (LDAP) 查询超过时间阈值时,也会记录事件 ID 1644。时间阈值是在名为“搜索时间阈值(毫秒)”的 DWORD 值中配置的,该值位于以下注册表子项下:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Parameters  

当启用现场工程日志记录级别并且未使用搜索时间阈值(毫秒)注册表项或将其设置为 0 时,时间阈值的默认值为 300,000 毫秒。

有关如何使用事件 1644 解决 LDAP 查询性能问题的详细信息,请访问以下 Microsoft 网站:

创建更高效​​的支持 Microsoft Active Directory 的应用程序
http://msdn.microsoft.com/en-us/library/ms808539.aspx

答案3

有趣的是,Novell 上曾经有一款名为“Elapsed Time”的工具(也许通过 Google 快速搜索就可以找到)可以做与此非常相似的事情。

看起来像来自 JoeWare 的 ADFind可以给你经过的时间...这可能会有所帮助。

http://www.joeware.net/freetools/tools/adfind/usage.htm

看起来这两个开关可以解决问题:

-过去 显示搜索所花费的时间(以秒为单位)。

-已失效 显示各个执行点的经过时间(以秒为单位)。

相关内容