如何减少数据库访问次数


自己用PHP写一个博客网站,文章等数据存储在mysql中。

网页布局是:有左右两个侧边栏,中间显示文章内容。
左侧边栏显示分类和文章数,右侧边栏显示最新文章,最新评论,最新留言等。
要访问五次mysql才能得到侧边栏的这些数据,
再加上文章内容和评论等,这样每读一篇文章要访问7次以上的mysql。

不知深浅地请教一下,面对这种情况,
有没有什么技术或是办法减少mysql的访问次数?

web 数据库 php mysql

顶点的毒酒 11 years, 8 months ago

数据缓存,以及表设计优化

表设计优化比如:
左侧边栏显示分类和文章数 字段可以设计成: catid catname articlenum(文章数)
每次新增一篇对应分类下的文章articlenum + 1, 这样左侧栏原先需要查询2次数据库,现在只需要查询一次,查询的时候完全可以做持久文件缓存,有新文章增加或新分类增加时再清除文件,重新生成缓存文件

数据缓存比如:
中间的文章内容和标题完全可以缓存下来,不太会变的东西
向类似最新文章,最新评论和留言可以看添加的频率程度看是否也可以缓存下最新N条,新增文章,评论,留言时删除缓存

霧雨 まりさ answered 11 years, 8 months ago

Your Answer