willme105
V2EX  ›  问与答

wordpress 能不能用 redis 做主数据库, mysql 用来写入

  •  
  •   willme105 · Dec 29, 2014 · 5988 views
    This topic created in 4182 days ago, the information mentioned may be changed or developed.

    本来打算mysql做主数据库,redis做缓存。由于我的post有500w,每天都更新。redis做缓存确实很快,但有个问题是只有在页面第一次访问的时候才能缓存,所以第一次访问的页面需要10s以上才能打开。由于post量大,每天更新很多,造成首页不断的需要缓存。对第一次打开页面的访客很不友好。所以考虑用redis做主数据库。请问有没有这方面的教程。谢谢

    17 replies    2014-12-29 12:13:10 +08:00
    incompatible
        1
    incompatible  
       Dec 29, 2014
    “对第一次打开页面的访客很不友好” 其实只是首个第一次打开该页面的访客会觉得比较慢吧
    你可以用一个定时任务主动生成缓存
    willme105
        2
    willme105  
    OP
       Dec 29, 2014
    @incompatible 请问如何对wp全站页面定时主动生成缓存。LS别喷,我是菜鸟
    incompatible
        3
    incompatible  
       Dec 29, 2014
    @willme105 wp和php我都没用过
    但尼既然是站长,想必全站页面的链接你都知道吧? 用http客户端模拟请求把它们全访问一遍就可以了啊

    另:500w个po要全部缓存?你有这么大内存用来跑redis?
    willme105
        4
    willme105  
    OP
       Dec 29, 2014
    @incompatible 我用了8G内存。听说redis可以持久化到硬盘。准备尝试下。
    msg7086
        5
    msg7086  
       Dec 29, 2014
    我觉得你应该先看看是PHP太慢还是MySQL太慢。

    另外我假设你已经用了SSD了?
    willme105
        6
    willme105  
    OP
       Dec 29, 2014
    @msg7086 用了SSD了。等下检查下是不是PHP太慢。
    abelyao
        7
    abelyao  
       Dec 29, 2014 via Android
    好牛逼的站… 好奇是什么内容能做到 500万 POST
    diartyz
        8
    diartyz  
       Dec 29, 2014 via iPhone
    求网址,参观一下
    niko
        9
    niko  
       Dec 29, 2014
    同求网址~
    Chichele
        10
    Chichele  
       Dec 29, 2014 via Android
    持久化存储应该可以解决
    stonelei
        11
    stonelei  
       Dec 29, 2014
    壕霸气啊
    xwsoul
        12
    xwsoul  
       Dec 29, 2014
    500W 就要10秒了? 这不科学啊
    icodesign
        13
    icodesign  
       Dec 29, 2014
    同上, 不科学, 必然有东西拖了后腿
    lincanbin
        14
    lincanbin  
       Dec 29, 2014
    @abelyao 小偷站吧
    lincanbin
        15
    lincanbin  
       Dec 29, 2014
    另外这个执行时间,你一定用了某些遍历全表的插件。
    Showfom
        16
    Showfom  
    PRO
       Dec 29, 2014 via iPhone
    500w 数据 不说我也懂 嘿嘿

    楼主换程序吧 wp不适合你了
    soulteary
        17
    soulteary  
       Dec 29, 2014
    500w数据,读多写少,希望查询时间快,觉得内存/磁盘IO都不是事的可以考虑加object-cache。(前提你有高PV才有价值,没命中,cached就少,冷数据cache有啥用)

    如果第一次就想访问快,请上super-cache(自己稍稍折腾下连接协议等,速度还能继续提升30%以上,外网环境)

    参考地址: http://www.soulteary.com

    数据量稍微大一点的时候,如果还是mysql,程序分库分表可以大幅提高速度。

    如果要用nosql,诸如redis,需要自己程序实现一套查询的机制,或者直接根据自己的需求改一套查询脚本就好了。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3244 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 50ms · UTC 11:01 · PVG 19:01 · LAX 04:01 · JFK 07:01
    ♥ Do have faith in what you're doing.