解决服务器Active Directory环境里Windows登录性能问题办法
Windows登录性能因素
当查找登录性能问题的原因时,考虑大量因素很重要。一些因素包括:
- 域控制器太接近用户
- 网络连接与可用的带宽
- 数据中心上的硬件资源(x64 vs.x86、内存等)
- 应用于用户和计算机的组策略(GPO,会直接影响带宽)数量
- 用户和计算机所在安全组的数量(也直接影响带宽)
- 需要额外处理时间的GPO包含设置,如:环回处理、WMI过滤器和ACL过滤
- 繁重的载入域控制器由以下因素造成:需要认证的应用、来自用户脚本或应用的无效LDAP查询、宿主其他应用,如Exchange、IIS、SQLServer等的数据中心
- 客户端配置:内存、磁盘、处理器等、网络接口(10个、100或1000个)、到站点的合适子网映射和DNS配置
定义范围
为了定义问题的实际范围,我通常花时间询问简单的问题。这需要一些精力,因为这些问题通常由抱怨问题的用户定义。下面是需要询问的重要问题:
- 这些问题定义为单个站点、安全组、OU、部门、客户端的类型(笔记本还是桌面)还是操作系统?
- 问题在每天某个时刻发生吗?
- 当你在办公室或者跨VPN连接就发生问题吗?
- 描述症状:延迟每次发生在某个点吗?(例如发生在登录屏幕的“NetworkSettings”上)、在登录页面之前还是之后发生?
- 什么时候开始发生的?
工具和数据收集
我使用一些基本的工具收集数据。对于性能问题,我喜欢广撒网,收集所有能收集的信息。如下面例子:
在客户端和他们的验证数据中心运行微软产品支持报道(MPSreports)。这是个常用的工具,收集所有事件日志、MSINFO32、NetDiag、PConfig、驱动与hotfixes等的数据。Hewlett-Packard自身也有叫做HPSReports的版本,在我看来,它比微软的工具更高级,如果运行在数据中心上,可以收集具体的ActiveDirectory数据。它也收集与硬件相关的多余信息,甚至不是HP的硬件也可以收集。
在客户端,使用Microsoft KBarticle221833为Winlogon系统进程设置冗长的登录。这将在%Systemroot%\Debug\UserMode\Userenv.log文件里提供精确的细节。注意,这个日志不包括数据日期,因此你必须:
- 从客户端删除现有的userenv.log
- 启动verbose登录为每KB 221833
- 注销、登录并保存userenv.log到新地点,以在登录期间限制数据收集
注意,userenv.log在下面的GPO和配置文件进程很精确,并且通常你能明显看见哪里发生了登陆延迟。
启用NetLogon登录。Netlogon日志位于%systemroot%\debug,如果没有启用登录就是空的。例如,它会显示子网里的哪个客户端没有映射到站点。这会导致客户端在数据中心之外验证,需要的登录时间比预想的长。
运行来自Sysinternals的ProcessMonitor。在启用启动日志上的Help部分查看细节。你能在缓慢启动期间捕获进程信息查看哪个处理器在影响性能。
解决客户端登录缓慢的其他技巧
你还能查看下面的一些事情,看是否由已知的问题导致登录性能。
首先,在客户端上检查GPResult.exe和LOGONSERVER环境变量,MPSreports和HPSReports将为已登录的用户收集GPResult,它们不收集指向验证数据中心的LOGONSERVER变量。这很重要,因为每次用户登录,都会下载GPO到客户端。SYSVOL(包含GPO)是DFS根,不服从客户端站点警告。相反,它以随机命令收集数据中心(宿主SYVOLDFS根),然后可以从列表里的第一个数据中心下载GPO。
我遇到过这样的情况,在主服务站点的客户端将跨过缓慢的WAN连接到数据中心外,以获得GPO,导致了非常缓慢的登录时间。由于这可能在每个登录上发生,所以这个问题是间歇性的。
为下载GPO的数据中心检查GPResult,并查看GPO是否来自数据中心外面。同样,比较LOGONSERVER变量,查看客户端是否在数据中心外验证。使用已知的缓慢或繁忙连接,登录延迟能解释为“通常”行为。
另一个好测试是使用网络启动安全模式,查看是否发生延迟。如果没有,那么进行NetStart并列出所有启动的服务。然后以正常模式启动并运行NetStart,再次列出所有服务。这个不同就能证明是哪个服务有嫌疑,一次消除一个能帮助你识别问题。你也能尝试禁止启动时开始的应用,查看该应用是否是原因所在。交流QQ:2881064152
解决服务器Active Directory环境里Windows登录性能问题办法的更多相关文章
- 记一次虚拟化环境下Windows IO性能的解析
前言随着云计算技术与服务的发展和进步,越来越多的客户选择将业务部署到云端.但由于引入了虚拟化层,在业务部署过程中经常会遇到IO问题,通常也不易调试.本文主要介绍利用perf.systemtap等工具, ...
- 在eclipse里配置Android ndk环境 适用于windows mac 和linux(转)
在eclipse里配置Android ndk环境 适用于windows mac 和linux(转) 2012-02-27 13:02:16| 分类: android | 标签:java prog ...
- How to setup Active Directory (AD) In Windows Server 2016
Windows Server 2016 is the newest server operating system released by Microsoft in October 12th, 201 ...
- Delphi访问活动目录(使用COM,活动目录Active Directory是用于Windows Server的目录服务)
活动目录Active Directory是用于Windows Server的目录服务,它存储着网络上各种对象的有关信息,并使该信息易于管理员和用户查找及使用.Active Directory使用结构化 ...
- 实验环境里新创建成功的web application却在浏览器中返回404错误
刚刚翻笔记翻到一些刚学SharePoint时候解决的一些很2的初级问题,本来是有些挣扎该不该把它们记录到这个blog里的?因为担心这些很初级的文章会拉低这个blog的逼格,但是我的哥们善意的提醒了我一 ...
- SQLSERVER误删除了Windows登录用户验证方式使用Windows身份验证的解决方法
SQLSERVER误删Windows登录用户验证方式使用Windows身份验证的解决方法 今天看到这篇文章:没有了SA密码,无法Windows集成身份登录,DBA怎么办? 想起来之前着急哥问我的一个问 ...
- 解决服务器复制中SID冲突问题
解决服务器复制中SID冲突问题 如果你有多部的主机需要安装,最快的方法是什么?想必就是用像GHOST之类的软件来进行硬盘的复制.当然,如果是安装在虚拟机之中,则需要复制虚拟的硬盘档案即可,以微软的VP ...
- Android SDK +Eclipse+ADT+CDT+NDK 开发环境在windows 7下的搭建
Android SDK+Eclipse+ADT+CDT+NDK 开发环境在windows 7下的搭建 这几天一直在研究 Android SDK C/C++平台的搭建,尽管以前有成功在Windows ...
- Sublime Test 3 搭建C++11编译环境(Windows)
0. 我的环境: Windows 8.1,Sublime Test 3 - Build 3126,CodeBlocks 16.01. 1. 下载Sublime Test 3,以及安装Package和各 ...
随机推荐
- Flume整合Spark Streaming
Spark版本1.5.2,Flume版本:1.6 Flume agent配置文件:spool-8.51.conf agent.sources = source1 agent.channels = me ...
- svn本地客户端和eclipse插件对应不上解决
如果你是SVN来管理代码,如果你是用eclipse搞开发,如果你知道eclipse有SVN的插件,那么你一定想用它来直接管理你的代码.但是事情往往非人所愿.当我们用SVN客户端把代码更新到本地,并导入 ...
- C#中清空ListView中的数据
我的显示数据的方式通过button按钮点击事件,当点击之后查询数据库库并将数据显示出来. 代码如下: private void button6_Click(object sender, EventAr ...
- [转载]jquery中attr和prop的区别
在高版本的jquery引入prop方法后,什么时候该用prop?什么时候用attr?它们两个之间有什么区别?这些问题就出现了. 关于它们两个的区别,网上的答案很多.这里谈谈我的心得,我的心得很简单: ...
- asp.net core 阿里云消息服务(Message Service,原MQS)发送接口的实现
最近在后台处理订单统计等相关功能用到了大力的mqs,由于官方没有实现asp.net core的sdk,这里简单实现了发送信息的功能,有兴趣的可以参考实现其他相关功能 using System;usin ...
- 解决openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory错误
问题 在Centos7上编译安装openssl后,运行openssl version出现如下错误: openssl: error while loading shared libraries: lib ...
- python反射原理
1.反射原理 通过字符串的形式导入模块: __import__(),可以以字符串的形式导入模块. 通过字符串的形式导入函数: 反射: 根据字符串去某个对象里面取东西,可以是字符串,函数,数字. 根据字 ...
- Win7与Mint双系统安装体验
双系统安装前的准备 1.安装前的准备 安装双系统可能会对磁盘文件带来一些影响,为了避免在安装过程中由于系统瘫痪造成不必要的损失,所以我们在准备安装双系统之前,要对PC机中的重要文件进行备份,对资料要做 ...
- C#继承里的【就近原则】
参考博客:http://www.cnblogs.com/waynechan/p/3570702.html#2883966 参考书籍:<你必须知道的.NET>,作者王涛http://www. ...
- Eclipse 的常用快捷方式
快捷方式<!--[if !supportLists]-->0. Ctrl + 1 (快速修复)<!--[if !supportLists]-->1. Ctrl + D (删除当 ...