tug*_*erk 14 windows-server-2008 performance windows-server-2008-r2
我想知道按计划重新启动服务器是否是提高性能的好主意。
假设我们想在每 2 晚的凌晨 02:00 重新启动服务器。
这里的服务器是Windows Server 2008 R2. 主要是 SQL Server 和 IIS 7.5(近 15 个应用程序正在运行)在此服务器下运行。服务器有 4GB 内存。
Kyl*_*ndt 38
如果您希望重新启动计算机以提高性能,这可能意味着您最终会遇到内存管理问题。
如果有的话,在更理想的环境中重新启动服务器会损害性能(当然还有正常运行时间)。计算性能的基础之一是利用缓存(在快速内存中提供数据)。每次重新启动时,都会破坏缓存。SQL Server 和 IIS 都是如此。尽管您可能没有理想的环境,但以下内容应该可以帮助您找到比按计划重新启动服务器更好的选择。
现在您提到这是 IIS 7.5。虽然我觉得很郁闷,但在 IIS 7.5 上运行的许多 Web 应用程序都存在内存泄漏,以至于 IIS 中的默认设置是每 X 分钟重新启动 APP,如果 APP 池空闲则将其关闭。理想的是修复内存泄漏——但如果你不能,你可以调整这些设置,包括内存限制和计时器。您可以使用 perfmon 来确定哪个 w3wp 进程正在使用内存。这有点痛苦,但您可以使用%systemroot%\system32\inetsrv\APPCMD list wps.
回到缓存,SQL 将占用它所能占用的内存。您可以在 SQL Server 的属性中对此进行限制。如果您不限制内存并且您还在机器上运行 IIS,那么它们可能会开始争夺内存杀戮性能。这篇出色的文章详细介绍了这一点:系统管理员的 Microsoft SQL 内存指南。
由于您在同一台机器上同时安装了 IIS 和 SQL,因此您必须平衡它们的内存使用情况。如果不这样做,您可能会将可能再次使用的内存换出到磁盘——这是一个糟糕的地方(应该有用于交换活动的性能计数器)。通过使用 IIS 回收设置和 SQL 内存限制,您应该能够使该系统稳定。为了平衡这一点,您可能需要超过 4GB 的内存。此外,如果这是一个选项,我强烈建议将 SQL 服务器放在专用机器上——这将使性能更好,并大大简化事情。
joe*_*rty 12
我不支持按计划重新启动服务器,尤其不是作为解决某些潜在问题的一种方式。如果您需要重新启动此服务器以解决性能问题,那么更好的做法是找到问题的原因并解决它。定期重新启动服务器只会混淆潜在的问题。
如果您有严重的内存泄漏,那么当然,为什么不 - 否则每月重新启动一次更新。
| 归档时间: |
|
| 查看次数: |
10163 次 |
| 最近记录: |