Condividi tramite


Le query LDAP vengono eseguite più lentamente del previsto nel servizio directory AD o LDS/ADAM e nell'ID evento 1644 possono essere registrate

Questo articolo offre una soluzione alternativa per un problema a causa del quale le query LDAP vengono eseguite lentamente in un computer Windows Server che usa ad AD LDS o un servizio directory ADAM.

Numero KB originale: 951581

Sintomi

In un computer Windows Server che usa un servizio directory Active Directory Lightweight Directory Services (AD LDS) o active Directory Application Mode (AD/AM), alcune applicazioni non vengono eseguite a livelli di prestazioni previsti.

Quando si abilita la registrazione di progettazione dei campi (debug) per tracciare una query LDAP, il registro eventi seguente mostra che la query LDAP è una query inefficiente.

Note

Gli attributi utilizzati in questo evento sono solo esempi.

Inoltre, si riscontra un utilizzo elevato della CPU e un tempo di risposta lento. Se il database è notevolmente più grande della memoria fisica disponibile per il server di directory, è anche possibile che l'I/O del disco sia aumentato durante l'elaborazione di una query di questo tipo.

Quando si esaminano gli attributi nel filtro di ricerca, si scopre che tutti hanno indici definiti. Se gli attributi non dispongono di indici definiti e si aggiungono gli indici tramite una modifica dello schema, il problema persiste o non migliora molto.

Causa

Quando si crea una traccia di rete della query LDAP, si noterà che si tratta di una query di paging.

Il server LDAP può usare un solo indice durante l'elaborazione di una query di paging. Ciò è dovuto al fatto che l'implementazione LDAP per le ricerche in pagine non crea un contesto costoso per la query e quindi usa un solo indice per una query di paging.

Soluzione alternativa

Per risolvere questo problema, è possibile inviare la query senza usare il controllo query con paging. In questo modo il server LDAP può ottimizzare per filtri più complessi.

Note

Per impostazione predefinita, le query con paging sono abilitate per alcune librerie client LDAP. Pertanto, potrebbe essere necessario scrivere codice aggiuntivo nell'applicazione per abilitare e disabilitare le query di paging in base alle esigenze specifiche.

Stato

Microsoft ha confermato che si tratta di un problema.

Riferimenti

Come configurare la registrazione degli eventi di diagnostica di Active Directory e LDS