有一个网站,需要在首页上显示
最新添加的物品
最后更新的物品
搜索最多的物品
最近搜索的物品
A种类的物品中卖的最多的
B种类的物品中卖的最多的
指定的物品
特别指定的物品以上查询针对于同一个表。这个表的记录非常的多,表的字段内容也很多。如果每个查询都执行一次的话。服务器的cpu占用率非常的高。几个人同时访问刷新就会很慢。
有没有什么缓存的技术可以使用。刚接触php不是特别了解。期望高手解答

解决方案 »

  1.   

    http://zhidao.baidu.com/question/73543180.html
    不知道这个是不是你要找的
      没有实际写过不敢妄言
      

  2.   

    php 的 Memcached 是否对你有帮助?我自己没用过,正考虑系统的学习一下 Memcached.
      

  3.   

    将操作的结果缓存在内存或序列化后保存在文件
    如 最新添加的物品 在insert进表的操作中 同时写进缓存文件 首页直接读取缓存
    考虑更新是否很频繁 很频繁的话建议 分表
      

  4.   

    缓存技术是数据库的救星。。memcache是个不错的选择 安装和使用都非常的简单 
      

  5.   

    关于缓存技术( MemCached )
    可以参考以下两个案例,对你肯定有帮助:http://www.php100.com/html/shipinjiaocheng/PHP100shipinjiaocheng/2010/0125/3856.html
    http://www.php100.com/html/shipinjiaocheng/PHP100shipinjiaocheng/2010/0201/3897.html
      

  6.   

    memcache是一方面。
    楼主的需求上,可以对表做一下分解。不要都针对一个表,而且针对一个表的做法也不合理。如果你是想关联查询的话,那就把关联的内容直接写到目标表里面,不要关联。
    假设商品表为goods
    最新添加的物品 购物车表cart
    最后更新的物品 购物车表cart
    搜索最多的物品 搜索表searchlog
    最近搜索的物品 搜索表searchlog
    A种类的物品中卖的最多的 销售表sold
    B种类的物品中卖的最多的 销售表sold
    指定的物品 置顶表topads
    特别指定的物品 置顶表topads
    ——上面写了个大概意思吧。你可以在创建cart表的时候创建一个字段为goods_title储存货物名。