PHP如何加速到最快

PHP如何加速到最快,第1张

网站的速度 一般 是从架构 , 数据库, php代码方面优化的。

而php本身没什么优化的,只要按照php的编码 规范来写就ok了;

还有就是做好缓存

另外就是注意 sql 语句里面的一些 小细节了,原则是:最先出现的条件,一定是过滤和排除掉更多结果的条件;第二出现的次之;以此类推。

例如 有个这样的表

字段a 字段b 字段c

1 7 11

2 8 10

3 9 13

1,SELECT * FROM table WHERE a>’0’ AND b<’1’ ORDER BY c LIMIT 10

2,SELECT * FROM table WHERE b<’1’ AND a>’0’ ORDER BY c LIMIT 10

1 和 2 结果是相同的但是 查询速度就大不相同,由于 表中 b 字段的数据 大部分 都是大于 1的 所以马上可以过滤 大部分 数据 ,所以 2 比较好些

eaccelerator安装配置PHP加速 eAccelerator简介 eAccelerator是一个的免费、开源的PHP模块,它能够为提供PHP加速、优化、加码、和动态内容缓存功能。它通过存储PHP脚本编译后的状态而加快执行PHP脚本的速度,而不需要频繁的编译这个PHP脚本。而且它能优化PHP脚本,以提高执行PHP的速度。eAccelerator特色是减少了服务器负载、使PHP脚本加速1-10倍。 下载地址:sourceforgepress=”1″ eacceleratorpress=”1″ 允许或禁止压缩内容缓存。默认值为 “1”,即:允许压缩。 eaccelerator/pub/Releases/3.2.0/xcache-3.2.0.tar.gz # tar -xvf xcache-3.2.0.tar.gz # cd xcache-3.2.0 # ./configure –with-php-config=/usr/local/php/bin/php-config –enable-xcache # make &&make install 会生成类似如下信息 Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/ 所有的模块都会生成到这个目录下 编辑php配置文件 # vim /usr/local/php/etc/php.ini extension = /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/xcache.so 重载PHP # service php-fpm reload 如果是你Apache+PHP模式,那么重启Apache即可. # service httpd restart 或者 # /usr/local/apache-2.2.27/bin/apachectl restart 测试结果

1、eAccelerator

eAccelerator是一个自由开放源码PHP加速器,优化和动态内容缓存,提高了PHP脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。 它还有对脚本起优化作用,以加快其执行效率。使PHP程序代码执效率能提高1-10倍。从文字上可以理解为:eAccelerator是PHP加速器扩展。

2、memcached

Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度。从文字上可以理解为:内存缓存扩展,并且针对于集群服务器使用较多,主要用于分布式缓存,算是数据库缓存。

3、Alternative PHP Cache(APC缓存)

Alternative PHP Cache (APC缓存)是一种对PHP有效的开放源高速缓冲储存器工具,他能够缓存Opcode(目标文件)的PHP中间码。 APC的缓存分两部分:系统缓存和用户数据缓存. 系统缓存 是自动使用的,是指APC把PHP文件源码的编译结果缓存起来,然后在再次调用时先对比时间标记。如果未过期,则使用缓存代码运行。默认缓存 3600s(一小时).但是这样仍会浪费大量CPU时间.因此可以在php.ini中设置system缓存为永不过期(apc.ttl=0).不过如果这样设置,改运PHP代码后需要restart一下您的web服务器(比如apache…).目前对APC的性能测试一般指的是这一层cache从文字上理到:Alternative PHP Cache(APC缓存)也算是一种内存缓存扩展,算是数据库缓存扩展。

4、Xcache

是一个开源的opcode缓存器/优化器, 他能够提高服务器上的PHP性能,他通过把编译PHP后的数据缓冲到共享内存从而避免重复的编译过程, 能够直接使用缓冲区已编译的代码从而提高速度. 通常能够提高您的页面生成速率2到5倍, 降低服务器负载。 其实它与eAccelerator一样是PHP加速器扩展。

以上就是他们的作用与区别,简单一点就是:eAccelerator,xcache是PHP缓存扩展,memcached、APC缓存是数据库缓存扩展,一般两者只有要安装其中一个即可,不要贪多。另外,实际测试中发现当Cache数量超过一定阀值的时候,APC的性能不如Memcache。所以在扩展的选择上,本人一般会选择xcache+memcached这个组合。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/481782.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-06-08
下一篇2023-06-08

发表评论

登录后才能评论

评论列表(0条)

    保存