PHP最优化措施
在Drupal中,由于PHP代码执行在处理一个请求中占了一大块,所以我们需要知道采取哪些措施才能加快这一进程,这一点非常重要。对编译后的PHP操作代码(opcodes)进行缓存,和剖析应用层来找出低效算法,能够带来重要的性能提升。
缓存操作代码
由于Drupal是一个需要大量数据库操作的程序,所以一个opcode缓存不能作为一个单独的解决方案,但它一个整体方案中的一部份。只需要最小的努力,他人仍然可以代码明显的性能提升。
图22-1 Alternative PHP Cache (APC)带有一个接口,它能够展示内存分配情况和当前缓存中的文件。
剖析应用
通常定制的代码和模块对于小规模的站点能够很好的工作,如果将它放到大一点的站点上那么就可能成为站点的瓶颈。耗费CPU的代码循环,占用内存的算法,还有大量的数据库读取,这些都可以通过剖析你的代码来判定PHP在哪里花费了大量时间,因此,找到的关键点也就是你需要花费功夫进行调试的地方。更多关于PHP调试器和profiler的信息,参看第21章。
有时候,即便是添加了opcode并且进行了代码优化以后,你的web服务器仍然不能处理这么大的负载,那么现在你就应该换一个更强大的服务器,比如带有更多CPU或者更快的CPU,或者更换应用架构,采用多个web服务器。