跳到主要内容

CPU资源使用情况

HostGator 监控所有共享主机和 VPS 托管计划的 CPU 使用情况。以下详细说明了我们各托管选项的使用限制。本文将帮助您了解我们的资源限制,以及使用 SSH 检查 CPU 使用情况的高级方法。

  • CPU 使用限制 ⤵
  • 使用 SSH 监控 CPU 使用情况 ⤵

CPU资源限制工具
HostGator 在 cPanel 中实施了 CPU 资源限制工具,用于在用户接近 HostGator 服务条款定义的资源限制时提醒用户。欲了解更多关于此限制的信息,请参阅以下知识库文章:

  • CPU资源限制

CPU使用限制

  • 共享主机 ⤵
  • VPS主机 ⤵
  • 独立服务器 ⤵

以下是根据您的计划类型划分的使用限制。

共享主机

共享主机的限制与优化型 WordPress 站点相同;但此限制适用于整个账户,并由同一 cPanel 上安装的所有站点共享。
除非您的站点脚本密集且需要更多处理,否则不太可能连续 90 秒达到 25% 的 CPU 使用率。

以下是一些减少 CPU 使用率的有效技巧:

  • 减少来自其他站点的横幅和广告数量。
  • 避免使用过多脚本,且不要强制使用 html 处理服务器端代码(如 php 和 shtml)。
  • 尽量避免使用 https 协议;加密和解密通信明显比未加密通信更耗 CPU。

Flash、视频、音频和图像文件会被下载到浏览器,仅消耗带宽。

VPS主机

您可以使用 100% 的 CPU 资源;但这只是服务器总 CPU 资源的一部分。如果您需要比共享主机更多的 CPU 资源,VPS 不是最佳选择,您应选择独立服务器。

请注意,如果容器过度使用资源(例如 CPU),可能会导致节点上其他客户的性能问题。此时,您的容器可能会被“冷却”暂停至少 10 分钟,也就是说,容器会被暂停运行,几分钟后才重新启动。此循环将持续,直到您的容器资源问题得到解决。

独立服务器

您可以使用服务器 100% 的 CPU 资源。

对于 VPS 和独立服务器,一个好方法是关闭随 cPanel 附带的 webstat 程序(AWstat)。请注意,AWstat 和其他跟踪工具会使用 CPU 和 MySQL 连接。关闭它们可以减少 CPU 使用率。


使用 SSH 监控 CPU 使用情况

您可以通过 SSH 监控服务器上的进程和 CPU 使用情况。欲了解如何通过 SSH 访问服务器,请参阅我们的文章《如何获取和使用 SSH 访问》。您可以使用两个工具检查服务器上 CPU 使用率较高的进程,其中之一是 top 命令。

Top 是 HostGator 服务器上可用的任务管理程序,生成运行进程的有序列表,用户可按偏好排序,以监控服务器健康状况。运行 top,请按以下步骤操作:

  1. 使用 SSH 登录服务器。
  2. 在命令行输入命令 top。示例:
user@serveraddress.tld [~]# top

注意: top 命令会根据您登录的用户限制搜索范围。如果您以 root 用户登录服务器,且希望仅显示特定用户的进程,可以使用 -u 选项运行命令。示例:

root@server [~]# top -u username
  1. 要退出 top,请按 q 键返回命令行。

运行 top 后,您将看到类似如下的输出:

op - 15:14:39 up 68 days, 22:57,  2 users,  load average: 0.09, 0.02, 0.01Tasks:   7 total,   1 running,   6 sleeping,   0 stopped,   0 zombieCpu(s):  3.4%us, 18.0%sy, 34.0%ni, 35.9%id,  7.2%wa,  0.5%hi,  0.9%si,  0.0%stMem:  65835156k total, 63794700k used,  2040456k free,  2011064k buffersSwap:  6143996k total,  1322776k used,  4821220k free, 46736152k cached
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND 1646 username   39  19 13276 1088  852 R  0.0  0.0   0:00.05 top 6828 username   39  19  4312  884  556 S  0.0  0.0   0:00.00 man 6832 username   39  19  9248 1084  924 S  0.0  0.0   0:00.00 sh 6833 username   39  19  9248  664  492 S  0.0  0.0   0:00.00 sh

该命令用途广泛,可配合多种选项使用。本文仅介绍如何读取进程列表及如何按 CPU 或内存使用率排序进程列表。以下是 HostGator 服务器默认显示的列及其含义:

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
  • PID :任务的唯一进程 ID。
  • USER :任务所有者的用户名。
  • PR :任务的调度优先级。
  • NI :任务的 nice 值,表示服务器运行任务的优先级调整值,数值越低优先级越高。
  • VIRT :任务使用的虚拟内存总量。
  • RES :任务使用的物理内存。
  • SHR :任务可用的共享内存量。
  • S :任务状态。任务可能的状态如下:
    • D = 不可中断睡眠
    • R = 运行中
    • S = 睡眠中
    • T = 被作业控制信号停止
    • t = 调试器跟踪时停止
    • Z = 僵尸进程
  • %CPU :显示运行进程的 CPU 使用率,是监控 CPU 使用时最重要的列。按 <Shift> + P 可以按 CPU 使用率对列表进行排序。
  • %MEM :显示运行进程的内存使用率。按 <Shift> + M 可以按此列排序列表。
  • TIME+ :显示任务自启动以来使用的总 CPU 时间,格式为:
    • 分钟 : 秒 . 百分之一秒
      例如,01:24.03 表示 1 分 24 秒零 3 百分之一秒。
  • COMMAND :显示启动任务的命令行或关联程序名称。

这将帮助您检查服务器上的活动进程,识别使用大量 CPU 资源的用户,从而具体定位问题原因。以上仅为该命令的简要介绍。要查看完整文档,请登录 SSH 并输入命令 "man top",示例如下:

root@server [~]# man top

这将打开 top 程序的完整文档,可使用上下键浏览。要退出手册,请按 q 键。