升级服务器或者减少include的文件大小。

解决方案 »

  1.   

    include_once或者
    require_once
    这样只包含一次
      

  2.   

    没有太好的办法,程序文件总是要加载的。不然运行什么?
    1、将include的文件放在ramdisk中,可减少读取的时间
    2、用zend编译php文件,可减少php预编译的时间
      

  3.   

    坚持只能升级服务器或者减少include的文件大小。从他提供的数值来判断,加载文件就占了总执行时间的一半,那实际执行了的代码达不到已加载的10%。如果带有数据库操作,那更可能不到1%,极可能他加载了200k的文件只调用了其中一个函数。减少文件大小的可行性很高。将include的文件放在ramdisk在win下不知道怎么样,但经测试在linux下几乎对提速没有任何帮助。linux会自动将常用的文件全部缓存进内存里。只要你还有内存就不存在加载文件费时的问题,费时的实际上是php的预处理。如果测试出的结果是加载费时(include的时间和file_get_content时间相差不大),那升级服务器,加内存才会有明显效果。强行放入内存只会让程序更慢(这个文件没加载进内存说明用的没有别的文件多,为了缓存一个用不多的文件强行将用得多的踢出内存结果当然是更慢)。zend有帮助,如果你还没装就装上吧。
      

  4.   

    在真正用到的地方使用require或include,不要直接包含
    比如if语句的分支中。
    再来就是细化类的功能。。
      

  5.   

    对的
    if(...) include 'a.php'
    else include 'b.php'这类写法的优点是php在执行本页面时不会扫描分支里的文件,也不会包含进来,只有当运行的时候再去包含和解析
      

  6.   

    感谢各位的指点,因为程序里使用了ADODB,发现加载这个组件的时间最长了。