monitor模式和AP模式下,一段时间都会停止收数
原因:
1、Log_to_file退出并显示错误:“recv:no buffer space available”。由于Log_to_file无法调用了所以停止计数
2、 System call slows down the process which can fill the memory(由于内存原因,系统停止进程)
3、当socket 进行TCP 连接的时候(也就是调用connect 时),一旦网络不通,或者是ip 地址无效,就可能使整个线程阻塞。
解决方法:
1、增加了进程log_to_file的调度优先级
增加了进程log_to_file的调度优先级,让其不间断地连续运行
sudo renice -n -20 -p pid(log_to_file对应的pid)
sudo renice -n -20 -p pid /……/log_to_file tmp.dat
尝试其它指令:
Linux系统进程的优先级取值:-20 到 19,数越大优先级越低。
命令1:sudo nice -20 /……/log_to_file tmp.dat,还是会出收数停止的情况
命令2:sudo nice --20 /……/log_to_file tmp.dat,还是会出现停止收数的情况
注:查看log_to_file进程的PID方法:
1、让发端和收端都正常运行,收端运行log_to_file不停收数
2、在收端打开一个新的终端,输入下面的指令
pgrep -l XXX,这里第三个参数修改为log_to_file
这时终端中会显示出进程log_to_file的进程号为2357
重新收数,再次查看log_to_file的进程号,此时变为2755
重启主从机运行log_to_file后查看进程号显示为2396
3、运行前log_to_file没有对应的进程号,运行后才有进程号,只能运行后再修改优先级
查看内存及cpu使用情况的命令:top
同样在新的终端下top,只要一直在收数就可以看到 log_to_file对应的一行信息,当收数停止后,这一行信息也会消失
设置优先级我这里不奏效
2、内存
内存的使用情