Cache Atribut ADSI

Model objek ADSI menyediakan cache atribut sisi klien untuk setiap objek ADSI. Cache atribut sebanding dengan tabel dalam memori yang berisi nama dan nilai sebagian besar atribut objek yang telah diunduh. Beberapa atribut, seperti atribut operasional, tidak di-cache. ADSI menggunakan penembolokan properti untuk meningkatkan performa manipulasi atribut dan menambahkan kemampuan transaksi untuk operasi baca dan tulis atribut. Kemampuan ini sangat penting untuk klien yang ditulis dalam bahasa yang tidak memiliki mekanisme batching asli untuk mengatur atribut, seperti sistem pengembangan Microsoft Visual Basic. Tanpa cache properti ADSI, klien tersebut harus mengakses server setiap kali atribut dibaca atau ditulis.

Saat objek dibuat atau pertama kali terikat, cache properti untuk objek kosong. Ketika metode IADs::GetInfo dipanggil, ADSI memuat atribut yang diminta untuk objek dari layanan direktori yang mendasar ke dalam cache lokal. Saat nilai atribut tertentu dibaca dan cache kosong, ADSI melakukan panggilan implisit ke metode IADs::GetInfo . Saat cache diisi, semua operasi baca atribut hanya berfungsi pada konten cache.

Saat nilai atribut ditulis, nilai baru disimpan dalam cache lokal hingga metode IADs::SetInfo dipanggil. Ketika metode IADs::SetInfo dipanggil, atribut dalam cache diterapkan ke layanan direktori yang mendasar. Setelah metode IADs::SetInfo dipanggil, nilai tetap berada di cache hingga secara eksplisit di-refresh dengan panggilan lain ke metode IADs::GetInfo.

Penting

Metode IAD::GetInfo harus digunakan dengan hati-hati karena metode ini akan selalu menimpa nilai atribut dalam cache dari layanan direktori yang mendasar, bahkan jika nilai yang di-cache telah diubah. Artinya, ini akan menimpa nilai atribut yang telah diubah dalam cache, tetapi tidak berkomitmen pada layanan direktori yang mendasar dengan panggilan ke metode IADs::SetInfo.

 

Gambar berikut menunjukkan berbagai metode yang digunakan untuk beroperasi pada cache.

adsi attribute cache