更新

更新

自从上周我在我的机器上运行 apt-get 升级以来,我观察到 perl 进程的 CPU 使用率非常高且周期性

21392 112 39 19 10332 7552 3592 R 53.0  1.5 0:01.63 perl

  426 root      20   0    5088   2476   2256 S  0.0  0.5   0:00.33  `- cron
24709 root      20   0    6484   2560   2200 S  0.0  0.5   0:00.03      `- cron
24713 112       20   0    1900   1100   1024 S  0.0  0.2   0:00.01          `- sh
24714 112       20   0    4604   2640   2476 S  0.0  0.5   0:00.02              `- copy-local-and-
24719 112       20   0    1900   1204   1128 S  0.0  0.2   0:00.01                  `- refile-and-grok
24725 112       20   0    3536   1516   1436 S  0.0  0.3   0:00.00                      `- xargs
24726 112       20   0    1900   1076   1004 S  0.0  0.2   0:00.01                          `- refile-and-grok
24728 112       39  19   18592  15008   4996 R 91.2  3.0   0:06.70                              `- perl

每次 perl 进程出现时,进程 ID 都会发生变化。

更新

root@raspberrypi:/var/ftp# ps -ef | grep perl
112      25971 25969 91 13:42 ?        00:00:20 perl /usr/share/dsc-statistics-presenter/dsc-xml-extractor
root     25981 22322  0 13:42 pts/0    00:00:00 grep perl

自从我的服务器启动并运行以来,该进程始终运行。自从我将 perl、per-base 和 perl 模块从 5.20.2-3+deb8u5 升级到 5.20.2-3+deb8u6 后,CPU 使用率似乎很高。我正在尝试回滚,但我无法做到

root@raspberrypi:/var/ftp# apt-get install perl=5.20.2-3+deb8u5
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Version '5.20.2-3+deb8u5' for 'perl' was not found
root@raspberrypi:/var/ftp#

任何人都可以帮助我找出CPU使用率如此高的原因或回滚已完成的升级吗?

答案1

DSC:DNS 统计数据收集器

该程序是用 Perl 编写的,但这不是 Perl 问题。您正在使用 DSC。为了解决这个问题,我们必须知道您使用的 DSC 版本。我的建议是升级到较新版本的 DSC。


您可能正在经历2015年10月9日修复的bug

用户报告,当收到仅包含 DNS 消息长度的 TCP 段时它引用的消息(即无序),然后 DSC 进入 100% CPU 循环。确认当 dnslen 出现乱序时代码无法正常工作,但我无法轻松重现 100% CPU 错误。

相关内容