如何检测有多少活跃的Unicorn工作人员忙?

时间:2015-06-25 12:29:33

标签: ruby-on-rails ruby unicorn

我正在使用Ruby独角兽,并将其配置为拥有15个工作进程。

如何判断当前有多少工人正在处理工作(不闲着,等待工作)?

2 个答案:

答案 0 :(得分:2)

如果您只需要命令行上的信息,您可以检查每个CPU使用的数量:

ps aux --sort=-pcpu | grep '%CPU\|unicorn'

ps aux --sort = -pcpu - 获取所有正在运行的进程的列表,按CPU使用顺序反转排序(最高CPU优先)

| - 将上一个命令的输出输出到下一个

grep'%CPU \ | unicorn' - 仅返回包含%CPU(第一行)或独角兽的行。 \ |是grep模式中的OR符号。

您应该得到这样的输出,第3列中的CPU使用率,第4列中的内存使用情况:

USER       PID %CPU %MEM    VSZ   RSS TTY   STAT START   TIME  COMMAND 

vagrant   4444  33.2 45.0 349988 152892 ?   Sl   13:43   0:03 unicorn master -c /vagrant/config/unicorn.rb -E development -D   

vagrant   4449  0.0 15.9 362204 162716 ?    Sl   13:44   0:01 unicorn worker[0] -c /vagrant/config/unicorn.rb -E development -D

高CPU使用率意味着在使用中,很小或没有CPU意味着工作人员闲置而且没有做任何工作。

答案 1 :(得分:1)

您可以使用Raindrops或New Relic'RPM。