我正在使用Ruby独角兽,并将其配置为拥有15个工作进程。
如何判断当前有多少工人正在处理工作(不闲着,等待工作)?
答案 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。