Hosting
在伺服器的控制面板中添加新域時調試高 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 位。嘗試了不同的硬體和核心,總是一樣的……
看起來一個 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
從生產伺服器複製/粘貼 s - 該 JSON 中可能存在一些敏感資訊,例如登錄名/密碼/會話/API 密鑰/等。