AD に情報を照会することがよくあります (例: Windows プリンシパル、セキュリティ グループなどのフェッチ)。そのような情報をキャッシュする良い方法を知りたいです。例えば:
var pc = new PrincipalContext(ContextType.Domain);
var up = UserPrincipal.FindByIdentity(pc, User.Identity.Name);
私が達成したいと思っているのは、FindByIdentity()
「ねえ、最近このクエリを実行したので、ADを二度と気にしないように」と判断して、ローカルキャッシュから取得することです。
質問 1: DirectoryServices または関連するライブラリは、そのようなメカニズムを提供しますか?
質問 2: 2 番目に、これらのクエリは 1 秒間に数百回の HTTP リクエストで起動されます。@HillBilly.Developer が以下に提案するように、独自のキャッシュ メカニズムを作成する必要がある場合、キャッシュ ストアの優先スコープはどれになりますか?