繁体   English   中英

在Win Forms C#中使用Active Directory登录到SQL Server时性能不佳

[英]Poor Performance when logging into SQL Server using Active Directory in Win Forms C#

我的应用程序使用Windows身份验证连接到SQL Server。 我在作为Active Directory组的服务器上登录。 如果用户在Active Directory组中,则它将您登录到SQL Server中并为您提供正确的权限。

但是,这种方法比使用SQL Server身份验证要慢得多,有什么方法可以提高性能。

我做了一些测试以登录服务器需要多长时间:

  • SQL Server身份验证-0.068414 s
  • 使用AD的Windows身份验证-0.182627 s

谢谢

我只是要添加一条评论,但时间太长了。 现在在这里。

he 直接向SQL Server提供凭据时,它可以执行自己的身份验证并返回。

但是,当您指定AD凭据时,SQL Server然后必须再次往返于域控制器以确认您的凭据(尽管从技术上讲,我认为您实际上是在传递令牌。无论如何)。

我的2c。

我不会为此担心。 所有用于连接数据库的MS技术都有一个数据库连接池,这些连接池将保留在后台,因此不会有太多的打开和关闭连接。

与您在服务器上运行的实际查询相比,0.18267s很可能什么都没有。

如果您真的想进一步研究,可以尝试以下操作:

  • 确保广告不太忙
  • 确保SQL Server和AD之间的连接良好(使用Ping进行验证)
  • 如果可能,将权限授予AD用户与AD组。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM