我在本地机器上设置了一个ADLDS实例(Windows Server 2008 R2),用于新应用程序,并编写了一些.NET代码来访问它。这是我正在测试的其中一个功能,如您所见,它非常简单。
Dim MyLdapUri As New Uri(searchRoot)
Using MyContext As New PrincipalContext(ContextType.ApplicationDirectory,
MyLdapUri.Authority,
MyLdapUri.LocalPath.Substring(1), ContextOptions.SimpleBind,
strUsername, strPassword)
Return UserPrincipal.FindByIdentity(MyContext, IdentityType.Name, username)
End Using
我发现一个问题,就是在测试应用程序中首次调用此或任何其他函数访问实例时有大约18秒的延迟。随后对AD LDS实例的调用大约为40毫秒。一旦您让实例未查询几分钟,然后第一次调用需要18秒。
我在事件日志中没有发现异常。我还尝试了不同的连接方式(如上所述简单绑定到在实例中定义的用户,使用本地和域Windows帐户),但始终存在这个18秒的额外延迟。有人可以给我指点是什么原因并/或如何诊断/修复它吗?