Windows 2008中的远程桌面性能问题

我们使用Windows Server 2008上的远程桌面运行一个应用程序作为远程应用程序,我们得到的情况是(在我们有大约40个人login后)服务器可以冻结几秒钟(例如20秒)。

看起来问题不是由于缺less处理器或内存不足造成的。 该应用程序是相当重的磁盘,但我们已经从Raided SATA驱动器更改为更快的SSD磁盘,并没有得到改善。

该应用程序是一个32位应用程序运行在64位环境和8GB的RAM。

应用程序在Windows Server 2000中的RDP上运行良好(最多100个用户)(尽pipe由于服务器耗尽内存而开始减速)

查看各种监视器,冻结时处理器和networking使用率达到峰值,虽然这似乎与服务器在解冻后捕捉到更多的关联。

我们认为这可能与用户login时卸载/加载configuration单元有关,但这是一个猜测。

我的问题是… – 如何找出可能导致此错误的原因? – 其他任何人遇到这样的问题 – 你是如何解决这个问题的?

谢谢。

根据我的经验,冻结是由以下任何一种情况造成的:

  • 高磁盘队列长度(即比硬盘可以处理更多的I / O)
  • 有问题的驱动程序和固件
  • networkingstream量非常高
  • 高内存或处理器利用率

请注意,这是一个最可能最不可能的列表。 I / O经常是一个瓶颈。 您可以使用性能监视器进行诊断。

我已经看到了这个,并问了一个相关的问题( 如何诊断服务器暂时冻结 )。

看看下面的文章。 http://support.microsoft.com/kb/934330 ,它可能会帮助,但我仍然不知道到底是怎么回事。

在过去,我在我的环境边缘运行大型terminal服务器来控制使用我们系统的人员的访问。 我从使用Windows 2000terminal服务器的时候就遇到了这个问题。 我发现的问题是,当人们login和注销时,会“冻结”所有涉及的服务器。 随着越来越多的人使用服务器,“冻结”会变得更糟。

我经常谴责Novell客户端32的开销,并最终使用旧的零pipe理工具来剥离用户login会话中的function,直到他们尽可能精简地运行。

我后来有一个terminal服务器使用2003年,没有Novell,并有相同的问题。 我发现漫游configuration文件是问题。 “冻结”会发生,因为它试图通过networking加载新的用户configuration文件..现在,当我们从家庭驱动器同步脱机文件时,会发生。

你如何解决它?

  • 限制窗口的“漂亮”function。
  • 在这些types的服务器上使用更多的caching。
  • 保持服务器碎片整理,尽pipe在SSD上并不总是推荐
  • 保持服务器补丁
  • 限制防病毒活动
  • 不要让用户本地存储到服务器

检查一下,看看你是否有东西在运行,一次做很多的磁盘访问。 上个星期,MySQL 5.0完全没有明显的原因就把一个2008terminal服务器搞砸了,把MSSQL放在那里就行了。

(我不是M $巨魔,我没有亲自做这个,我的sup did。I I I I </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> )

你的客户在Vista上运行吗? 我有一个类似的问题,非常有能力的Windows Server 2003和2008几乎没有任何负载(我当时是唯一使用它们的)。

事实certificate,Vista的TCP / IP堆栈有一些接收窗口优化,实际上导致RDP等应用程序的某些路由器性能不佳。

这里有一些文章解释这个问题:

  • 远程桌面缓慢解决问题
  • 在Vista上接收窗口自动调整

总结一下,试试这个:

netsh interface tcp set global autotuninglevel=disabled 

如果这不是你的问题,你可以使用这个撤消它:

 netsh interface tcp set global autotuninglevel=normal