新しいアプリケーション用のローカルマシン(Windows Server 2008 R2ボックス)にADLDSインスタンスセットアップがあり、アクセスするための.Netコードをいくつかノックアップしています。これは、私がテストしている関数の1つです。かなり単純なものを見ることができます。私が見つけ繰り返し起こってい最初のアクセスでAD LDSが遅い - なぜですか?
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
ことの一つは、私がテストベッドアプリケーションからインスタンスにアクセスするには、このまたは他の関数を呼び出す初めての〜18sの遅延です。その後のAD LDSインスタンスの呼び出しは、40msのオーダになります。一度インスタンスを数分間放置すると、最初の呼び出しでコールは18秒に戻ります。
イベントログに何か不自然なものは見つかりません。私はまた、インスタンスに異なる方法(上記のようにインスタンスに定義されたユーザーに単純バインド、ローカルとドメインの両方のWindowsアカウントを使用して接続)を試みました。この最初のヒット時の追加の遅延は常に発生します。誰かが私にこれを引き起こす原因への任意のポインタを与えることができ、そして/またはそれを診断/修正する方法を教えてもらえますか?
これを理解することの喜びで、数ヶ月間更新するのを忘れてしまった!この問題は、使用されているuriのホスト名が、LDAP:// myserverではなく、LDAP://myserver.ourdomain.localの完全なものでなければならないという点で、いくつかの奇妙なものに見えます。奇妙な、そして特にすべてが同じドメインにありますが、その後ナッツとして甘く働くようです。また、WCF呼び出しで使用されるurisにも同様のことが起こりました。 – bigfatron
毎分同じ問題が発生しました。私はあなたの記事を見つけられるまで何時間も探しました。本当にありがとう!!!!!!! – Vincent
質問をクリックすると、回答をクリックしなくても便利です。 – JPBlanc