我想问一下 SSH 连接通常需要多少内存。以下是我如何找出发生了多少 RAM 命中:
请不要因为我正在使用 GoDaddy 共享托管计划或 cPanel 而激动不已。当没有任何运行时,cPanel 报告正在使用 0 MB 的 RAM。当我通过 SSH 连接到我的(1GB,2 个 CPU)共享主机时,cPanel 突然报告大约 490 MB 的 RAM 正在使用中。
(另外,我确实删除了公共文件夹中的所有 PHP 文件,以消除这是由于机器人爬行造成的可能性。我读过https://serverfault.com/questions/449296/why-is-linux-reporting-free-memory-strangely,但这没有帮助。)
无连接:
通过 SSH 连接到我的帐户后:
ps aux
输出:
login as: user123
[email protected]'s password:
user123@a2plcpnl0490 [~]$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
user123 675171 0.0 0.0 138652 1492 ? S 11:09 0:00 pure-ftpd (ID
user123 678698 0.0 0.0 191408 9132 ? S 11:25 0:00 /usr/bin/php
user123 679664 0.0 0.0 104632 1832 ? S 11:29 0:00 sshd: user123@
user123 679666 0.0 0.0 11476 1636 pts/0 Ss 11:29 0:00 -bash
user123 679759 0.0 0.0 13380 1028 pts/0 R+ 11:30 0:00 ps aux
user123@a2plcpnl0490 [~]$
我的问题是,SSH 连接需要多少 RAM?一般情况下大约 500 MB 左右吗?
GoDaddy 支持人员表示:“就是这样。获取 VPS。”真的是这样吗??
答案1
寻找比 GoDaddy 更好的提供商。我首先想到的是 BlueHost 或 Hostgator,尽管我从未使用过其中任何一个。
您的 ps aux 输出显示您的 ssh 会话当前使用 1.8kib 内存 1.8 SSH 1.6 -bash 124 cpaneld 1.02 ps aux
所有大小均以 kib 为单位,因此总计约为 128mb。认为完全配置和运行的操作系统将使用另外 300mb 并且 ssh 之前的面板以某种最低功耗状态显示它并且当您在其中进行 ssh 时显示它的全部功能,这并不是没有道理的。
另一个想法是,他们会给您一个被监禁的会话,并且仅在您登录或主动运行某些内容时才根据您的限制分配资源。
答案2
我相信他们运行某种容器,所以你看不到全貌。你的ps aux
能力确实有限。
当没有任何东西运行时,他们可能会在某个地方停止盒子/交换内存并报告零,如果你ssh
进入,他们会将盒子置于在线状态并加载整个系统。
对于一个连接来说 500 MB 太大了ssh
。它与整个系统相关。
答案3
我已经离开 GoDaddy 并转向无服务器。我写了一个文章关于我使用 GoDaddy 和 cPanel 的经验,并在此过程中发现了以下内容:
- GoDaddy 使用 CloudLinux 6 (RHEL 6) 和 CageFS(一种被监禁的文件系统)。
- CageFS
/etc/proc/...
仅报告我的帐户的使用情况和命令等。 - 通过 SSH 会话,
pure-ftp
服务器实例显示零内存使用情况。 - cPanel 与我的虚拟主机文件托管在同一台计算机上。
- 在一个选项卡或另一个选项卡中刷新 cPanel 会导致报告的 RAM 使用情况大幅增加(这回答了我最初的问题)。
推论:如果您的共享主机在为您的网站提供服务的同一台计算机上有 cPanel,并且您经常刷新 cPanel 以查看日志、使用文件管理器等,那么您可能减少您的网络流量。
谜团已揭开。