本来打算mysql做主数据库,redis做缓存。由于我的post有500w,每天都更新。redis做缓存确实很快,但有个问题是只有在页面第一次访问的时候才能缓存,所以第一次访问的页面需要10s以上才能打开。由于post量大,每天更新很多,造成首页不断的需要缓存。对第一次打开页面的访客很不友好。所以考虑用redis做主数据库。请问有没有这方面的教程。谢谢
1
incompatible 2014-12-29 04:10:41 +08:00
“对第一次打开页面的访客很不友好” 其实只是首个第一次打开该页面的访客会觉得比较慢吧
你可以用一个定时任务主动生成缓存 |
2
willme105 OP @incompatible 请问如何对wp全站页面定时主动生成缓存。LS别喷,我是菜鸟
|
3
incompatible 2014-12-29 04:17:24 +08:00
@willme105 wp和php我都没用过
但尼既然是站长,想必全站页面的链接你都知道吧? 用http客户端模拟请求把它们全访问一遍就可以了啊 另:500w个po要全部缓存?你有这么大内存用来跑redis? |
4
willme105 OP @incompatible 我用了8G内存。听说redis可以持久化到硬盘。准备尝试下。
|
5
msg7086 2014-12-29 05:24:15 +08:00
我觉得你应该先看看是PHP太慢还是MySQL太慢。
另外我假设你已经用了SSD了? |
7
abelyao 2014-12-29 08:12:19 +08:00 via Android
好牛逼的站… 好奇是什么内容能做到 500万 POST
|
8
diartyz 2014-12-29 08:17:23 +08:00 via iPhone
求网址,参观一下
|
9
niko 2014-12-29 08:34:41 +08:00
同求网址~
|
10
tigerstudent 2014-12-29 08:57:42 +08:00 via Android
持久化存储应该可以解决
|
11
stonelei 2014-12-29 09:56:27 +08:00
壕霸气啊
|
12
xwsoul 2014-12-29 09:59:48 +08:00
500W 就要10秒了? 这不科学啊
|
13
icodesign 2014-12-29 11:02:29 +08:00
同上, 不科学, 必然有东西拖了后腿
|
15
lincanbin 2014-12-29 11:20:46 +08:00
另外这个执行时间,你一定用了某些遍历全表的插件。
|
16
Showfom 2014-12-29 11:31:59 +08:00 via iPhone
500w 数据 不说我也懂 嘿嘿
楼主换程序吧 wp不适合你了 |
17
soulteary 2014-12-29 12:13:10 +08:00
500w数据,读多写少,希望查询时间快,觉得内存/磁盘IO都不是事的可以考虑加object-cache。(前提你有高PV才有价值,没命中,cached就少,冷数据cache有啥用)
如果第一次就想访问快,请上super-cache(自己稍稍折腾下连接协议等,速度还能继续提升30%以上,外网环境) 参考地址: http://www.soulteary.com 数据量稍微大一点的时候,如果还是mysql,程序分库分表可以大幅提高速度。 如果要用nosql,诸如redis,需要自己程序实现一套查询的机制,或者直接根据自己的需求改一套查询脚本就好了。 |