缓存巨大的mysql查询的最佳方法?

时间:2012-04-30 14:18:50

标签: php mysql caching memcached

目前我正在使用Memcache来存储我的php pdo mysql查询,它的工作正常。

但是,我想创建一个包含~50,000个网址的单页面站点地图,并且我认为我可能需要一种不同的方式来缓存此查询。理想情况下,我只想每天执行一次查询,并认为在memcache中保留50,000个ID和标题达到这段时间会完全浪费空间吗?

将文件压缩成某种临时的.txt文件会更好吗?或完全不同的方法?

2 个答案:

答案 0 :(得分:1)

我同意马克的评论。每天生成一次文件,也许使用cron作业。

我建议你参考关于sitemaps的陈述,你应该考虑这个陈述:

  

站点地图文件的限制为50,000个网址,每个网址限制为10兆字节   站点地图。可以使用gzip压缩站点地图,从而减少带宽   消耗。

目前,我正在动态生成我的站点地图,但将其切换到cron作业是我的待办事项列表。

答案 1 :(得分:0)

正确配置“MySQL查询缓存”和“Apache缓存”,忘记在代码中执行所有这些操作。

http://dev.mysql.com/doc/refman/5.6/en/query-cache.html