V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
soeeeeee
V2EX  ›  PHP

WP 网站,最近 CPU 负载会突然暴涨到 60 多,重启 php 负载立刻下降,有可能是什么原因呢

  •  
  •   soeeeeee · 2016-05-13 11:46:50 +08:00 · 5394 次点击
    这是一个创建于 3101 天前的主题,其中的信息可能已经有所发展或是发生改变。

    WP 站,平时 CPU 负载都在 2 以下,阿里云 8 核 8G ,最近 CPU 负载会突然暴涨到 60 多,上了 cdn 还是一样,重启 php-fpm 负载就立刻下降,这可能是什么原因造成的呢?

    34 条回复    2016-11-24 15:16:05 +08:00
    rhwood
        1
    rhwood  
       2016-05-13 11:54:30 +08:00   ❤️ 1
    看访问记录,
    1.可能是被爬虫了。
    2.wp-comments 被持续 spam
    3.wp-login.php 被持续暴力破解中,可以参考这个屏蔽机器人: http://www.yculer.com/2015/04/%E4%BF%9D%E6%8A%A4%E4%BD%A0%E7%9A%84-wordpress-%E4%B8%8D%E8%A2%AB%E6%9A%B4%E5%8A%9B%E7%A0%B4%E8%A7%A3.html
    dxwwym
        2
    dxwwym  
       2016-05-13 12:15:02 +08:00 via iPhone
    曾经经历过 1 、 2 还有 1 、 2 同时,很酸爽…而且还是虚拟主机的,哈哈!最严重的时候空间被停了一个月将近。最后黑名单掉大量南方 ip 后好了一些。
    newworld
        3
    newworld  
       2016-05-13 12:17:38 +08:00
    看看 是不是 模板文件 或者是插件 里面有哪些可疑的语句 可以先停用所有插件 然后换用默认模板 再确认一下 排除一下
    tangzhehao
        4
    tangzhehao  
       2016-05-13 13:37:13 +08:00
    看 Logs 解决问题!
    一、一楼基本说对了,爬虫对网站还是有不小的压力的,量力而行。我曾经用过百度云测,因为云测访问太频繁,服务器受不住( http://tzh.in/709.html
    二、 Spam 开启 WP 内置插件可以解决问题。
    三、爆破我补充一点, xmlrpc.php 这个接口也成为爆破常用对象,如果不需要,直接关闭!( http://tzh.in/269.html
    四、 WP 本身就庞大耗资源,加上插件更加。所以不需要的插件别开启,主题写得好也很重要。一定要静态化!!!
    五、基础的一些运营技巧不知道楼主处理了没?譬如关闭掉 WP-Cron ,用主机 Cron ,可以省去很多资源。
    ……
    后面求补充。
    kafka0102
        5
    kafka0102  
       2016-05-13 13:52:43 +08:00
    解决问题要的是思路。在问题出现时逐个排查可能的原因点。比如,
    1 )统计 web server 的 log ,看是否有爬虫 IP 。
    2 )查看 web server 的 log 看请求的响应时间是什么情况。
    3)通过 top 等命令查看 CPU 和内存的具体使用情况。
    4 )如果请求平均耗时长,能否通过优化配置解决,比如增加 php 进程数之类的。
    5 )查看数据库的 log ,是否是慢查询造成的。
    6 )外围的解决不了问题,就分析程序了,可以打些统计耗时的 log 排查一个请求中哪些点会是瓶颈。
    7 ) WP 这种不好改了,就像上面那样通过调整设置看看。
    hoythan
        6
    hoythan  
       2016-05-13 14:09:31 +08:00
    八核八 G 的服务器, WP 站日 IP 得有好几万了吧?如果你有需要,我是专业 WP 开发的,可以给你看一个优化例子。微博扣我。
    leavic
        7
    leavic  
       2016-05-13 14:30:17 +08:00
    wp 真的很怕爬虫,因为我单机 scrapy 就把一个网站爬挂过。。。。
    0o0o0o
        8
    0o0o0o  
       2016-05-13 14:53:57 +08:00
    我不會優化 只有提高配置了 目前是 24H 毒婦 3﹣4W IP
    gamexg
        9
    gamexg  
       2016-05-13 15:04:38 +08:00
    @tangzhehao 我只碰到过一次被攻击 xmlrpc.php ,查日志发现全是那一个 ip 访问 xmlrpc.php 的日志。 iptable 解决。
    mjever
        10
    mjever  
       2016-05-13 15:59:46 +08:00
    静态化了会好很多!
    tangzhehao
        11
    tangzhehao  
       2016-05-13 16:18:57 +08:00
    @gamexg 我遇到过几次。是的,阿里云可以看的出来,会报警。
    lwbjing
        12
    lwbjing  
       2016-05-13 16:30:50 +08:00
    还不放弃 wp 啊...
    pacoyang
        13
    pacoyang  
       2016-05-13 16:33:15 +08:00
    ps 输出看下哪些进程吃 cpu ,是不是已经被肉鸡了
    dxwwym
        14
    dxwwym  
       2016-05-13 16:38:07 +08:00
    @lwbjing 换 cms 是要讲成本的,新的环境换下来人力物力......
    50vip
        15
    50vip  
       2016-05-13 17:52:52 +08:00
    看 log ,可以看看那个请求造成的~
    soho176
        16
    soho176  
       2016-05-13 18:50:41 +08:00
    我以前用 wp 的话 就是全静态化 消耗内存很小
    zaishanfeng
        17
    zaishanfeng  
       2016-05-13 19:28:58 +08:00 via Android
    最近流量涨了? 大部分瓶颈在 mysql php 几乎不会出什么问题
    LINAICAI
        18
    LINAICAI  
       2016-05-13 19:42:12 +08:00
    同感,一个月内两次 WP 崩了,需要服务器重启,主要是 Mysql 内存溢出了, VPS 资源有限好容易就崩
    lslqtz
        19
    lslqtz  
       2016-05-14 01:08:29 +08:00 via iPhone
    看 access.log 。有没有重复 ip 的请求 如果很多 直接屏蔽掉。
    lslqtz
        20
    lslqtz  
       2016-05-14 01:09:58 +08:00 via iPhone
    @zaishanfeng 是在 php 吧,我的站单个访问全是 php 消耗的, mysql 消耗排在最后。
    xiaoc68
        21
    xiaoc68  
       2016-05-14 07:19:04 +08:00 via Android
    @0o0o0o 我也是一样提高配置
    zaishanfeng
        22
    zaishanfeng  
       2016-05-14 10:29:48 +08:00 via Android
    @lslqtz mysql 会影响 php 的
    lslqtz
        23
    lslqtz  
       2016-05-14 15:47:10 +08:00 via iPhone
    @zaishanfeng 我清楚是怎么一回事了,不过我上个缓存基本就 ok 了。感谢指正。
    tangzhehao
        24
    tangzhehao  
       2016-05-14 17:57:36 +08:00
    @zaishanfeng mysql 丢出去啊。现在云上不都有这服务,我数据库一直都没放在本地,一来上云节省资源,二来分开数据安全。
    tangzhehao
        25
    tangzhehao  
       2016-05-14 17:58:08 +08:00
    @lslqtz WP 一定要静态化缓存,不然 php 消耗玩死你。其实可以上 PHP7
    lslqtz
        26
    lslqtz  
       2016-05-15 03:59:04 +08:00
    @tangzhehao 我是用 php7+opcache+wp-super cache+memcache 。
    realpg
        27
    realpg  
       2016-05-15 08:45:40 +08:00
    8Core 8GB
    这么高的配置……
    tangzhehao
        28
    tangzhehao  
       2016-05-16 00:21:05 +08:00
    @lslqtz Nice~基本到极限了,程序可以再优化下,我也有打算近期转 PHP7
    abc123ccc
        29
    abc123ccc  
       2016-07-12 10:44:47 +08:00
    @tangzhehao xmlrpc.php 直接删掉行不???我直接删掉了,不知道会不会有什么问题。

    @leavic 一个 WP 网站,一直按住键盘上的 F5 ,就把刷挂它。

    @LINAICAI
    @0o0o0o
    @soeeeeee

    我给 hdwo.netlookae.com 站长优化过 WP ,特别是 lookae.com ,日 IP1 万 5 , PV2 万- 3.5 万,这是保守值,曾经一度 CPU100%,站点在 linode 上,用的 1 核 CPU1G 内存。

    需要 wordpress 优化的,付费找我。
    tangzhehao
        30
    tangzhehao  
       2016-07-12 16:30:36 +08:00
    @abc123ccc 直接删掉应该没问题,但是每次更新应该又会填坑,所以还是要 function 上面做下函数关闭。
    abc123ccc
        31
    abc123ccc  
       2016-07-27 09:17:20 +08:00
    @tangzhehao 我不更新 WP 程序大版本的,因为更新一次, WP 就更吃 CPU ,服务器资源就会更紧张,目前自个优化了下后台,感觉用着还算舒服。
    tangzhehao
        32
    tangzhehao  
       2016-07-27 16:19:08 +08:00
    @abc123ccc 用着舒服就行了,不是版本爱好者,没有大 BUG 就没必要折腾其实。
    abc123ccc
        33
    abc123ccc  
       2016-11-22 14:31:04 +08:00
    @tangzhehao 赶快转 PHP7 呀,转了以后,负载更小。


    有需要做 fastcgi_cache 的,可以找我,目前我已经在用,相当于静态的速度,但会在缓存失效后,自动更新缓存。相当方便。
    走过路过的给 hdwo.net 留个 IP ,网站被拔毛, IP 少得可怜。
    tangzhehao
        34
    tangzhehao  
       2016-11-24 15:16:05 +08:00
    @abc123ccc PHP7 因为我网站用了太多插件,还不知道兼容不兼容,所以还在犹豫,之后可能会转。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5366 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 07:36 · PVG 15:36 · LAX 23:36 · JFK 02:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.