时不时地会出现服务器cpu占用率100%的情况,基本到这时候php基本就全挂了,而出问题的也是php-fpm这个进程。说实话对于这个破进程真是没什么好的想法,进程数量怎么设置都不对,反正就是只要开机就各种卡。其实也考虑过是不是被攻击了,但是就这么个破网站,个人感觉攻击也没什么意思啊。图什么呢~~
通过top命令以及trace命令,没有找到什么有用的线索。不过通过查看访问日志可以看到每秒都有数条请求,这尼玛就很神奇啊,每天的访问量不过1k多点,怎么可能会每一秒都那么多请求呢。通过tail命令查看访问日志太蛋疼了,于是就想着找个更加可视化的工具,于是找到了goaccess:
GoAccess是一款开源的且具有交互视图界面的实时Web 日志分析工具,通过你的Web 浏览器或者 *nix 系统下的终端程序(terminal)即可访问。 能为系统管理员提供快速且有价值的 HTTP 统计,并以在线可视化视图。
通过下面的命令即可安装:
apt install goaccess
安装之后通过下面的命令启动工具:
goaccess /home/wwwlogs/h4ck.org.cn.log -c
选择日志格式之后就可以查看数据了:
通过tab可以切换数据,日志清空之后不到一天时间已经2万多条请求了,这就很离谱啊,哪里有那么达到访问量。分析之后发现瑞典和德国的两个ip,直接给加到防火墙里面去了,但是并没有什么改观。现在操作系统和浏览器第一的数据还是来源于上面被ban掉的两个ip
命令行多少有些不直观,可以通过下面的命令生成html报告:
LANG="en_US.UTF-8" goaccess --no-global-config --log-format='%h - %^ [%d:%t %^] "%m %U %H" %s %b "%R" "%u" %^ "%v" "%^" %Dms' --date-format='%d/%b/%Y' --time-format='%T' --log-file=/home/wwwlogs/h4ck.org.cn.log --output=/home/wwwroot/h4ck/report.html
也可以通过下面的命令启动实时模式:
LANG="en_US.UTF-8" goaccess --no-global-config --addr=0.0.0.0 --port=7890 --ws-url=0.0.0.0 --port=8848 --real-time-html --log-format='%h - %^ [%d:%t %^] "%m %U %H" %s %b "%R" "%u" %^ "%v" "%^" %Dms' --date-format='%d/%b/%Y' --time-format='%T' --log-file=/home/wwwlogs/h4ck.org.cn.log --output=realtime.html
不过通过nginx反代websocket之后400错误了,这个还没找到解决办法,谁知道怎么处理的还望不吝赐教。
不过最后解决问题的办法还是升级了一下服务器配置,哎,我就是那个大冤种。是不是阿里云故意的啊~~
当前系统负载:
11 comments
增加缓存插件,尽可能静态化文章页面,CPU高但内存用的少,基本是PHP问题!
嗯嗯,发现是php的问题了,一个index.php执行时间超过了100秒。慢查询也没发现很好资源的东西,但是就是卡死了。之前也出现过几次,这次上个静态插件试试效果吧。
WP的数据库优化实在是不好评价,还是加个静态缓存,或是动态缓存,看服务器的配置了!
嗯嗯,试了几个插件,效果都不大好。还是继续litespeed cache吧。
我查问题还是习惯肉眼看原文,临时写个脚本处理。
嗯嗯,工具的好处就是可以拿来就用啦~~
中午好大佬
中午好~~~刚在杜郎那里也看到你了~~小年快乐啊,不出去玩玩吗?
小年快乐,就在家里呆呆吧太冷了
这个头图震惊到了
额~~不知道该说什么了