在服务器控制面板中添加新域时调试高 CPU 负载

在服务器控制面板中添加新域时调试高 CPU 负载

当我在服务器的控制面板中添加新域时,由于某些原因,它所花的时间比平时要长得多。

CPU 显示一个核心的使用率为 100%,并且 strace 报告如下内容:

poll([{fd=7, events=POLLIN|POLLERR|POLLHUP}], 1, -64771072) = 1 ([{fd=7, revents=POLLIN}])
recvfrom(7, "OiJsb2NhbCI7fWk6NTQ0O2E6NTp7czo1"..., 8192, MSG_DONTWAIT, NULL, NULL) = 8192
poll([{fd=7, events=POLLIN|POLLERR|POLLHUP}], 1, -64771072) = 1 ([{fd=7, revents=POLLIN}])
recvfrom(7, "bm5hbWUiO3M6MjI6ImJhZHppZXdpYXJ6"..., 8192, MSG_DONTWAIT, NULL, NULL) = 8192
poll([{fd=7, events=POLLIN|POLLERR|POLLHUP}], 1, -64771072) = 1 ([{fd=7, revents=POLLIN}])
recvfrom(7, "IjtzOjExOiJ3ZWJtYWlscHJvZyI7czow"..., 8192, MSG_DONTWAIT, NULL, NULL) = 8192

可能是什么原因呢?

我的操作系统是 CentOS 5.9 64 位。尝试了不同的硬件和内核,结果总是一样...

答案1

看起来一个 CPU 正在忙于接收一些巨大的 JSON:

λ ~/ base64 -D
OiJsb2NhbCI7fWk6NTQ0O2E6NTp7czo1
bm5hbWUiO3M6MjI6ImJhZHppZXdpYXJ6
IjtzOjExOiJ3ZWJtYWlscHJvZyI7czow
^D
:"local";}i:544;a:5:{s:5
nname";s:22:"badziewiarz
";s:11:"webmailprog";s:0%

我猜测“服务器的控制面板”软件可以重写以变得更加高效并且不会随着时间的推移而降低性能。

注意!不要strace从生产服务器复制/粘贴 - JSON 内部可能包含一些敏感信息,例如登录名/密码/会话/API 密钥/等。

相关内容