600万PV 网站 LNMP经常挂掉
以前100万 200万的时候都没有问题,后来因为内存用尽 换了一个8核 32G 256G固态硬盘的服务器,流量达到300万PV开始 LNMP 经常不定时挂掉,
有时1小时内挂掉 有时能坚持十个小时,
不管他 5-30分钟自己就恢复了,
其实不是完全挂掉而是特别缓慢,要么直接无法打开网页 要么就是等了几十秒勉强打开,
后使用自动重启LNMP脚本 30分钟一重启 PV直接从300万涨到600万,
说明这个问题对用户浏览有着极大的影响,流量直接翻倍.
但是问题又来了,随着流量的增长 出现问题的时间间隔不断缩短,经常在这30分钟重启LNMP前就出现问题,
但是重启间隔又不能太短,太短因为重启LNMP 也需要大概10~20秒,这期间的浏览全部无法显示,导致大量用户跳出.
PHP配置文件几乎都改过 无法解决,
MYSQL配置文件 参数能加大的都加大过,也试过直接恢复到原来的配置文件,问题依然。
NGINX 能修改的参数没几个都试过.
看过服务器负载值在0~2之间之前负载值达到5 也没有出现过这种无法打开的现象.
TOP里的WA值几乎为0
CPU在0~30%之间
出现问题时PHP NGINX MYSQL进程全部在运行中.
实在找不出问题出在哪里.
求各位指点..... 军哥目前忙于lnmp1.2的最后排查工作吧
你先试着在PHP NGINX MYSQL 几个配置文件多调整试试,看看有没有CC DD攻击,
看看各自的日志有没有报错的 菜鸟一个 实话 问题查了半个月 没结果,日志上所有错误和警告全部百度过,没有类似情况的案例可寻。
蛋疼,实在蛋疼啊。
求军哥速速救援 这么大的站,赚得多多,找个好代维呀
军哥 应该可以代维的。。到时按小时请他代维诊断看看。。 执行:
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S}'
如发现系统存在大量TIME_WAIT状态的连接,通过调整内核参数解决,
vim /etc/sysctl.conf
编辑文件,加入以下内容:
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 30
然后执行 /sbin/sysctl -p 让参数生效。 如数据库调用较多,可以试着把/usr/local/mysql/var挂载到一个独立的固态硬盘 固态硬盘用哪个LINUX系统。 先按2楼 fhksbb 查看各个组件的日志,看看都是些什么异常情况。另外用的什么缓存机制?如果用内存缓存之类的,应该不那么容易挂吧。
页:
[1]