AdLds / Adam 每 50 秒卡住一次
AdLds / Adam stuck every 50s
我的 AdLds / Adam 实例有一个奇怪的行为。
每隔 50 秒左右,查询的执行时间就会变长(2.36 秒而不是 0.1 秒)
我编写了一个简单的测试程序来使用相同的简单查询来查询我的本地实例,我得到了以下屏幕截图。
无论我从哪台计算机查询或查询到哪台计算机,我得到的结果都是一样的。
知道为什么吗?
我的查询代码:
private const string Cx = "LDAP://server:389/CN=Por,DC=XXX,DC=int";
DirectoryEntry de = new DirectoryEntry(Cx) { Username = "username", Password = "password" };
DirectorySearcher ds = new DirectorySearcher(de)
{
Filter = "(cn=randomUsername)",
SearchScope = SearchScope.OneLevel
};
SearchResult sr = ds.FindOne();
编辑
如果我使用 UserPrincipal,同样的问题。好像跟配置有关...
编辑
我已经在 ADAM 实例上启用了所有详细诊断,但没有弹出任何错误。在 2s 调用时没有来自垃圾收集的消息。
我已将以下内容添加到注册表中,但也没有任何更改:
- GC 强制重新发现 Window(秒)
- GC 强制等待过期(秒)
- GC 荣誉失败 Window(秒)
编辑
我看过修补程序 ADAM service runs slowly or stops responding during garbage collection 但它仅适用于 W2003 而不适用于 W2008R2 / W7
我在另一个 post 上找到了另一个:
AD LDS slow on first access - Why?
您必须指定托管 AdLds 实例的服务器的全名。
我完全不知道为什么,这很奇怪但它有效。
我的 AdLds / Adam 实例有一个奇怪的行为。
每隔 50 秒左右,查询的执行时间就会变长(2.36 秒而不是 0.1 秒) 我编写了一个简单的测试程序来使用相同的简单查询来查询我的本地实例,我得到了以下屏幕截图。
无论我从哪台计算机查询或查询到哪台计算机,我得到的结果都是一样的。
知道为什么吗?
我的查询代码:
private const string Cx = "LDAP://server:389/CN=Por,DC=XXX,DC=int";
DirectoryEntry de = new DirectoryEntry(Cx) { Username = "username", Password = "password" };
DirectorySearcher ds = new DirectorySearcher(de)
{
Filter = "(cn=randomUsername)",
SearchScope = SearchScope.OneLevel
};
SearchResult sr = ds.FindOne();
编辑 如果我使用 UserPrincipal,同样的问题。好像跟配置有关...
编辑
我已经在 ADAM 实例上启用了所有详细诊断,但没有弹出任何错误。在 2s 调用时没有来自垃圾收集的消息。
我已将以下内容添加到注册表中,但也没有任何更改:
- GC 强制重新发现 Window(秒)
- GC 强制等待过期(秒)
- GC 荣誉失败 Window(秒)
编辑
我看过修补程序 ADAM service runs slowly or stops responding during garbage collection 但它仅适用于 W2003 而不适用于 W2008R2 / W7
我在另一个 post 上找到了另一个: AD LDS slow on first access - Why?
您必须指定托管 AdLds 实例的服务器的全名。 我完全不知道为什么,这很奇怪但它有效。