我已转移到新的 dedi,使用 Windows Web 2008 R2 x64 来托管游戏服务器。
我遇到的问题是游戏服务器进程的 CPU 利用率每 5 分钟就会降至 0。我无法确定其他应用程序是否也发生这种情况,但游戏服务器的情况很明显,因为它的 CPU 利用率为 22% - 服务器的总 CPU 利用率徘徊在 24% 左右。
每 5 分钟发生一次这种情况似乎很奇怪。这在之前的 Windows 2008 32 位服务器上不是问题。游戏服务器本身是用 delphi 编写的,我只是希望这不是兼容性问题?有什么想法吗?
答案1
作为第一步,我认为至少要检查 3 类问题:
1)新硬件配置:
内存利用率——可用内存的百分比是多少?内存不足也会导致磁盘使用率过高,因为操作系统会将内存页面移入或移出磁盘。
无论内存如何,如果您的游戏/应用程序写入磁盘,请在其中一个 CPU 闪烁期间检查磁盘等待时间。
2)新的软件配置环境——旧机器上存在的“配置秘密”需要重新应用到新的服务器上:
检查您的病毒扫描程序配置——服务器上通常有一些文件需要免除“访问前扫描”保护。以前的服务器上是否有类似的配置需要在新环境中重新应用?
那么 CPU 亲和性之类的事情又如何呢?
这一类中可能存在任何内容;这就是配置管理如此重要的原因。希望其他两个类别中的一个存在真正的问题。
3)新的网络环境:
新主机是否位于不同的数据中心?如果您的服务器与任何类型的后端服务(身份验证/数据库/等)通信,请验证您的服务器和该服务之间的吞吐量是否足够。
坏的路由器端口/NIC 也可能是一个问题;但这应该更容易检测——运行连续 ping 并注意 CPU 下降期间的延迟时间。