2012-01-09 11 views
5

Ho un'installazione di istanza di ADLDS su un computer locale (casella di Windows Server 2008 R2) per una nuova applicazione e ho eliminato alcuni codice .Net per accedervi. Questa è una delle funzioni che sto testando, dato che puoi vedere le sue cose abbastanza semplici.AD LDS lenti al primo accesso - Perché?

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 

Una cosa che mi sto trovando accadendo ripetutamente è un ~ ritardo 18s la prima volta che io chiamo questo o qualsiasi altra funzione per accedere all'istanza da un'applicazione banco di prova. Le chiamate successive effettuate all'istanza di AD LDS sono nell'ordine di 40 ms. Una volta che l'istanza viene interrotta per alcuni minuti, le chiamate tornano ai 18 secondi della prima chiamata.

Non riesco a trovare nulla di negativo nei registri eventi. Ho anche provato a connettere l'istanza in modi diversi (legatura semplice a un utente definito nell'istanza come sopra, utilizzando account Windows sia locali che di dominio) e questo ritardo aggiuntivo di 18 secondi sul primo hit avviene sempre. Qualcuno può darmi qualche indicazione su cosa causa questo e/o come potrei fare per diagnosticare/risolverlo?

risposta

1

Questo può essere dovuto al modo in cui si autentica sul server.

Il server su cui si installa ADLDS in un controller di dominio?

Il computer client è nello stesso dominio del server?

In che modo il computer client risolve la parte DNS dell'URI?

  • Nel tuo caso si sostituisce LDAP://myserver da LDAP://myserver.ourdomain.local.
+1

Nell'euforia di capirlo, ho dimenticato di aggiornarlo per diversi mesi! Il problema sembra essere qualche stranezza in cui il nome host in uri utilizzato doveva essere l'intero LDAP: //myserver.ourdomain.local piuttosto solo LDAP: // myserver. Strano, e soprattutto in quanto tutto è nello stesso dominio, ma sembra funzionare dolcemente come un matto in seguito. Abbiamo anche avuto una cosa simile per uris usato nelle chiamate WCF. – bigfatron

+0

Ho avuto gli stessi problemi esatti che si verificano ogni minuto. Ho cercato per ore fino a quando ho trovato il tuo post. Grazie mille !!!!!!! – Vincent

+0

Quindi è possibile fare clic sulla domanda come utile anche se non si fa clic sulla risposta come utile. – JPBlanc