Книга: C# для профессионалов. Том II

Кэш

Кэш

Чтобы уменьшить сетевой трафик, ADSI использует кэш для свойств объектов. Как было показано ранее, обращение к серверу не происходит при создании объекта DirectoryEntry, а происходит, когда впервые считывается значение из хранилища каталога. При считывании первого свойства все свойства записываются в кэш, поэтому повторное обращение к серверу не нужно, когда считывается следующее свойство. Этот кэш свойств может быть выключен при задании свойства DirectoryEntry.UsePropertyCache как false. Лучше этого не делать, так как это будет порождать множество ненужных обращений к серверу.

Запись изменений в объекты также происходит только в кэше. Задание множества свойств не генерирует сетевого трафика. Метод DirectoryEntry.CommitChanges() требуется для очистки кэша и переноса всех измененных данных на сервер. Чтобы снова получить вновь записанные данные из хранилища каталога, можно для чтения свойств использовать метод DirectoryEntry.RefreshCache(). Задание свойства UsePropertyCache как false может быть очень полезно для отладки, чтобы увидеть, какое свойство было изменено неправильно.

Оглавление книги


Генерация: 0.564. Запросов К БД/Cache: 2 / 0
поделиться
Вверх Вниз