FindByIdentity - различия в производительности

Следующий код отлично работает на различных машинах в нашем домене .

var context = new PrincipalContext(ContextType.Domain);
var principal = UserPrincipal.FindByIdentity(context, @"domain\username")

Однако, если я запускаю этот похожий код на машине, которая не находится в домене, он работает, но строка FindByIdentity занимает 2+ секунды.

var context = new PrincipalContext(ContextType.Machine);
var principal = UserPrincipal.FindByIdentity(context, @"machinename\username")

Можно ли устранить эту разницу в производительности, предоставив специальные параметры конструктору PrincipalContext и / или метод FindByIdentity? Есть ли параметр в IIS или Windows, который можно изменить?

По крайней мере, может ли кто-нибудь сказать мне, почему он может быть медленнее во втором сценарии?

Код запускается из приложение ASP.NET MVC 3, размещенное в IIS 7.5 (интегрированный конвейер) в Windows Server 2008 R2.

16
задан Mayo 23 September 2011 в 19:21
поделиться