Was macht eine schnelle Abfrage aus?
Berücksichtigen Sie beim Ausführen einer Abfrage die folgenden Leistungsverbesserungskonzepte:
- Filtern Sie nach Möglichkeit nur nach indizierten Attributen. Verwenden Sie Indexattribute, von denen Sie erwarten, dass sie die geringste Anzahl von Treffern generieren. Weitere Informationen und eine umfassende Liste der indizierten Attribute für Windows finden Sie unter Active Directory-Schema.
- Suchen Sie nach objectCategory anstelle von objectClass, da objectClass keine indizierte Eigenschaft ist.
- Beachten Sie Empfehlungen. Erwägen Sie, den globalen Katalog zu durchsuchen, wenn Ihre Attribute als GC-repliziert aufgeführt sind.
- Vermeiden Sie die Suche nach Text in der Mitte und am Ende einer Zeichenfolge. Beispiel: "cn= * policiese * " oder "cn=ouse". *
- Angenommen, eine Teilstruktursuche gibt ein großes Ergebnisset zurück. Verwenden Sie Paging, wenn Sie Teilstruktursuchen durchführen. Der Server kann dann ein großes Ergebnisset in Blocken streamen, um die serverseitigen Arbeitsspeicherressourcen zu reduzieren. Dies reduziert effektiv die Netzwerkauslastung und verringert den Bedarf für das Senden extrem großer Datenbrocken über das Netzwerk.
- Geben Sie einen ordnungsgemäßen Bereich für Ihre Suchvorgänge ein, um nicht mehr als erforderlich abzurufen.
- Führen Sie eine komplexe Suche nach mehreren Attributen durch, da sie weniger leistungsintensiv als das Ausführen mehrerer Suchvorgänge ist. Eine Suche nach einem Objekt, das zwei Attribute liest, ist effizienter als zwei Suchen nach demselben Objekt, die jeweils ein Attribut zurückgeben.
- Verwenden Sie zum Lesen von Attributen mit einer großen Anzahl von Werten Bereichsgrenzwerte, um die Suchgröße zu minimieren, sodass Sie einige Tausend Elemente gleichzeitig lesen können. Weitere Informationen zum Angeben von Attributbereichsgrenzwerten finden Sie unter Abrufen des Attributbereichs.
- Binden an ein Objekt enthält das Bindungshand handle für den Rest der Sitzung. Binden und entbinden Sie die Bindung nicht für jeden Aufruf. Wenn Sie ADO oder ADO OLE DB, erstellen Sie nicht viele Verbindungsobjekte.
- Lesen Sie rootDSE einmal, und merken Sie sich den Inhalt für den Rest der Sitzung.