V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
LEFT
V2EX  ›  问与答

有没有删除 WP Super Cache 这个 WordPress 插件的朋友

  •  
  •   LEFT · 2015-12-16 17:13:23 +08:00 · 2567 次点击
    这是一个创建于 3267 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如题,上了 PHP7 , pagespeed , opcahce , memcached ,感觉 WP Super Cache 起不到作用了,是否该删掉。
    24 条回复    2015-12-17 22:05:16 +08:00
    zts1993
        1
    zts1993  
       2015-12-16 17:32:50 +08:00
    有了 opcahce 就删掉了。。反正没人访问。
    Andy1999
        2
    Andy1999  
       2015-12-16 17:37:10 +08:00 via iPhone
    一个都没上……改天研究下 pagespeed
    yylzcom
        3
    yylzcom  
       2015-12-16 17:45:11 +08:00
    @Andy1999
    @LEFT 靠,一直以为 PageSpeed 集成了 HTTP/2 里了(以为有了 HTTP/2 就不需要 PageSpeed ),我说 HTTP/2 配置怎么那么简单呢,删了好多行的 PageSpeed 配置...

    哎,囧,给点我自己搜索到的结果
    https://www.m00nie.com/2015/01/install-nginx-and-pagespeed/
    https://centminmod.com/http2-versus-spdy-nginx.html
    LEFT
        4
    LEFT  
    OP
       2015-12-16 19:32:35 +08:00
    @Andy1999 pagespeed 绝对值得以上,比 WP Super Cache 作用大多了
    LEFT
        5
    LEFT  
    OP
       2015-12-16 19:35:46 +08:00
    @zts1993 那就删掉
    @yylzcom 等 nginx 出 1.9 的 stable 再上 http2 吧,现在很多浏览器不支持 http2 ,使用 pagespeed 比 http2 来的更有价值
    Andy1999
        6
    Andy1999  
       2015-12-16 21:11:51 +08:00
    @LEFT 发我一个 ngx_pagespeed 编译好的可好? CentOS gcc 版本低 然后编译 5.3.0 直接死了
    Ed
        7
    Ed  
       2015-12-16 21:20:23 +08:00
    我还在用 WP Super Cache 。不是很懂想请教一下,用这个不就是已经全部都静态 html 文件了吗,又没跑 php ,也没有连接 mysql ,不是应该效率比你说的这些缓存还快的吗?谢谢啦。
    yylzcom
        8
    yylzcom  
       2015-12-16 21:44:06 +08:00   ❤️ 1
    @Ed
    PageSpeed 还带有图片压缩的功能,还有减少连接数

    memcached 是数据库, php7 是 php 性能方面,不管再怎么静态都是会有查询数据库执行代码的对吧, opcache 不是很了解,看介绍是 php 的缓存(函数运算结果?)

    如果上面全套都做了,效率上来说应该接近或者超过静态文件, WP Super Cache 的存在就真的没什么必要了
    yytsjq
        9
    yytsjq  
       2015-12-16 22:11:37 +08:00
    现在 PHP 7 如何与 Memcached 兼容呢?
    LEFT
        10
    LEFT  
    OP
       2015-12-16 22:24:36 +08:00 via iPhone   ❤️ 1
    @Andy1999 用 1.9.32.11 这个版本吧,上周才发布的,这里有编译参考 https://developers.google.com/speed/pagespeed/module/build_ngx_pagespeed_from_source 最新的一个 1.9 。 1.10 有 gcc 版本要求,我没有更新太折腾人了
    @Ed
    @yylzcom 对合并压缩 css 、 js 、图像压缩、移动端自适应调整,这些都是静态页面做不来的
    opcache 是 PHP 优化加速扩展,我也刚用不久
    页面多了静态页面的生成、频繁更新对服务器压力也很大另外我测试过,启用 wp super cache 时直接从数据库更新内容,刷新页面是更新后的内容,大概可以猜测可能直接跳过 wp super cache 插件了
    LEFT
        11
    LEFT  
    OP
       2015-12-16 22:54:46 +08:00 via iPhone
    msg7086
        12
    msg7086  
       2015-12-16 23:27:06 +08:00
    @LEFT stable 分支是偶数, 1.9 是奇数怎么会 stable 。你得等 2.0 ……
    ryd994
        13
    ryd994  
       2015-12-17 03:38:20 +08:00
    @yylzcom 静态文件是 nginx 直接处理的,根本不到 php ,怎么可能有超过静态的性能呢?
    LEFT
        14
    LEFT  
    OP
       2015-12-17 05:20:19 +08:00 via iPhone
    @msg7086 原来如此,受教了,谢谢
    @ryd994 确定么,因为中间有个 pagespeed ,可能不是这样
    ryd994
        15
    ryd994  
       2015-12-17 06:49:33 +08:00 via Android
    @LEFT pagespeed 的和纯静态不冲突啊。 pagespeed 的结果保存为静态文件。
    yylzcom
        16
    yylzcom  
       2015-12-17 11:12:18 +08:00
    @zts1993
    @Andy1999
    @LEFT HTTP/2 直接把 PageSpeed 的大部分优化都集成了,所以*好像*开启了 HTTP/2 就不需要 PageSpeed 了; Google 宣布 2016 年停止 SPDY 的支持,新版的 Chrome 里也没有查看 PageSpeed ( chrome://net-internals/#spdy )的地方了,倒是会在 chrome://net-internals/#http2 里显示 SPDY3.1 等字样。 Google 自家的产品, Twitter 都不出现 SPDY3.1 这样的协议,统统显示 h2.

    所以我觉得有 HTTP2 , SPDY 就是可有可无的了,最多就是 HTTP2 处于早期,暂时还没有涵盖所有 SPDY 的所有优化。
    LEFT
        17
    LEFT  
    OP
       2015-12-17 12:00:31 +08:00
    @ryd994 我做了实验在有 wp super cache 的情况下同一页面有 35 个平均查询用时约 0.112 seconds 反而比没有 wp super cache 相同页面有 33 个平均查询用时约 0.029 seconds 。最后还是把 wp super cache 移除了。
    LEFT
        18
    LEFT  
    OP
       2015-12-17 12:02:11 +08:00
    @yylzcom http2 实际就是 spdy 4
    yylzcom
        19
    yylzcom  
       2015-12-17 12:09:53 +08:00
    @LEFT 求告知你完整的配置 PHP7+ pagespeed+opcahce+memcached ?
    Ed
        20
    Ed  
       2015-12-17 15:17:27 +08:00
    @ryd994 我也一直以为这种绕过 php 和 mysql 的纯 html 应该是最快的了。但会不会是这样的,通过这些扩展把纯静态的 html 直接放到内存,访问的时候从内存读取,就比从硬盘读取快很多。理解不知是否有误。

    @LEFT 为什么在有 wp super cache 的情况下同一页面还会有 35 个查询?
    LEFT
        21
    LEFT  
    OP
       2015-12-17 17:20:56 +08:00
    @Ed 我也不知道是怎么回事,我用的我爱水煮鱼的 wpjam-debug 插件测的,不专业也不严谨,但是事实就是这样,可能是 memcached 起到作用了。活生生少了两个查询
    @yylzcom 看看我能不能整理出来
    yylzcom
        22
    yylzcom  
       2015-12-17 17:33:32 +08:00
    @LEFT 只要知道组件名称就行了,不需要太具体的参数之类的

    另外我所知道的 Wp Super Cache 生成静态页面,访客访问网站时还是要查询数据库才能访问到静态页面的,把数据库暂停一下就知道了。
    ryd994
        23
    ryd994  
       2015-12-17 19:17:58 +08:00 via Android   ❤️ 1
    @LEFT 我觉得你用法不对。真要纯静态了怎么还会有数据库查询? Nginx 直接处理完了啊

    @Ed 不会。操作系统都是有缓存的。你写入的文件,再读的时候,有很大概率缓存命中。也就是说,实际上基本都是从内存读的。强行用 memcached 之类的塞在内存里,反而更慢。

    @yylzcom 我觉得你们用 supercache 插件的用法都有点问题。我用的是 disk cache ,然后自己根据生成的目录结构,直接配置 Nginx 取这些静态文件。所以我 PHP 是用 ondemand 。事实证明绝大多数时间一个 worker 进程都没有。数据库也几乎没有查询。
    LEFT
        24
    LEFT  
    OP
       2015-12-17 22:05:16 +08:00 via iPhone
    @yylzcom
    opcache 编译 php 加上--enable-opcache 然后 php.ini 加参数
    memcached (需要 gcc44 gcc44-c++ libstdc++44-devel )如果是 php7 用这个来编译,其他的会出错 git clone https://github.com/php-memcached-dev/php-memcached.git cd php-memcached 接着 git checkout php7
    完了再设置 iptable
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1080 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 22:43 · PVG 06:43 · LAX 14:43 · JFK 17:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.