安静
PHP技术博客

100910 有数据依靠才能做到最好的优化【一】

最近加了几个QQ群,貌似发现自己知道的太少了,离我现在所谓的职位技能差太多了,有太多的需要去学习,太多的青春给我荒废了。

话说回来,今天的话题是关于大型交互型网站的优化的。

第一部分 关于 代码:

实则上很多代码 都是可以比较效率的,虽然他们都是C++封装好的1个个函数,虽然不要你去分析底层函数如何去写,但也需要去了解他们的运行速度。

经常的 使用的代码都是差不多的,就如  循环 和 迭代 还有其他  在这里面 迭代是最快的,它利用C++指针的指向 将光标移动 ,当移动到末尾没有的时候就停止了,而循环的话 需要去判断指针是否越界,或者说是指针还需要递增等等,运行速度远不如迭代。

如同判断的 if  和 switch  ,想来 switch 的效率远比if的高 ,代码也看上去整洁很多,如 if (){}elseif(){}elseif(){}  看到这个结构就让人头疼的,不推荐使用。 switch 则清晰了很多。

代码清晰的同时还能让运行效率更高何乐而不为呢?

第二部分 关于数据库读取:

很多时候我们做查询操作的时候时候  喜欢用 select a , b,c from table  实则  select * from table 更是会快更多,因为没有索引 ,select * 来得更效率,select count(*) 亦如此。

很多的时候我们喜欢用模糊查询,因为那样简单对于开发来说 简单的一堆东西都抛给数据库去做了,可想运行效率, 更多的时候精确的 字符串类型的大小比较会更快,大概 用精确的大小比较 比like 要快5-10倍 或者更多,这已经不是一个数量级的了。

很多的时候 我们喜欢 批量查询 ,取出一个又一个数据对象的值select * from table where a=”x” and a=”c” 等等 这样做的效率远不如 select * from table where a in (“x”,”c”)

很多的时候我们优化的优化的时候都说要建立索引,而索引的消耗也是巨大的,对于每次的插入数据那都是成倍的增加的,当然有了多条件索引以后 查询起来是要快很多 ,同样的一条sql语句 在没有索引 的情况下 查询 效率。。在百万条记录里的效率可以用1000倍效率差别来说,适当的建立索引,因为它会影响你的插入开销。

今天这里讲的只是第一部分。

有数据依靠才能做到最好的优化【一】

有数据依靠才能做到最好的优化【二】 未写

关于此话题的由来:

最近在闹减肥,早上 问同事我最近 有什么变化没,同事来了句,你丫又胖了,顿时两眼黑线啊。。。。。嘟! 在没有数据支撑的情况下,减肥也是无力的,肉眼的感觉不一定是对的,继续加油减肥吧,貌似肚子我感觉是小了点,以后可乐烟看来得改成 烟民了 哎 。

赞(0) 打赏
未经允许不得转载:AJ's Blog » 100910 有数据依靠才能做到最好的优化【一】
分享到: 更多 (0)

评论 8

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #-49

    话说,你的博是我抢的第6个沙发!

    不是咸鱼10年前 (2010-09-11)
  2. #-48

    学无止境!板凳一下

    zen cart10年前 (2010-09-11)
  3. #-47

    吧照片传上来。

    办法中国10年前 (2010-09-11)
  4. #-46

    要不我给你个小白鼠,你联系下优化吧。

    Xin10年前 (2010-09-12)
  5. #-45

    不断的武装,使自己更加strong

    感恩10年前 (2010-09-13)
  6. #-44

    学习了,对数据库效率的东西了解不多。

    leetom10年前 (2010-09-16)
  7. #-43

    优化很有用,学习了。

    element10年前 (2010-09-21)
  8. #-42

    迭代一定比循环快?
    迭代指针的移动不也得每次判断是否迭代完了?

    reeze10年前 (2010-10-16)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏