请教下speedy中的gzip方法
发布于:2022-01-17 09:50:54
#1 kk88
speedy中有个开启GZip的选项,我分别测试了下似乎没并有什么效果。
在文件里打印一个 phpinfo();
不开启 = 52308字节
使用 ob_start('speedy_ob_gzip'); = 52001字节
使用 ob_start('ob_gzhandler'); = 52001字节 //网上搜的,不另设压缩函数
问题:
一、gzip开不开启的差异才这么点吗?
二、如ob_start('ob_gzhandler')这个可用的话,那下面的speedy_ob_gzip函数是不是可不要了?
三、speedy.php里的template_exists()函数似乎并没用到,是不是也可省略掉。
我的PHP版本是5.2.10, 每次测试有重启apache。
还有一个问题,if(true = $string){}这个true放在前面跟后面有什么区别吗?
请指点,谢谢!
2010-12-15 17:50:40
#2 jake
1. gzip的效果很难说,有些页面可以压缩得很厉害,有些是没法看出什么效果,总的来说,gzip只是一种优化的手段,可以根据需要取舍。
2. speedy_ob_gzip函数是为了更多的兼容性,比如说如果gzip没有开启的时候,可以兼容原有的方式。
3. 在驱动类中,空函数是为了兼容,不会影响效率。
4. if(true
== $string){} 注意是两个等号,将值放前面,就是“如果只写一个等号的情况,就很容易判断出来”,如果值写到后面,那么$string就会被赋值,那么在程序中判断“少写一个等号”的难度就会增加,把值放前面是一种比较好的编程习惯。
2010-12-15 18:57:49
#3 kk88
谢谢jake.
个人比较重视效率,这也是选择SP的原因。
speedy使用的频率很多,去掉这两个函数可少加载几十行代码。
2010-12-15 19:39:23
#4 jake
谢谢jake.
个人比较重视效率,这也是选择SP的原因。
speedy使用的频率很多,去掉这两个函数可少加载几十行 ...
kk88 发表于 2010-12-15 19:39 
其实重视效率也不需要那么极致,现在的PHP编译器已经智能很多了,它会调整编译的代码来做到最好。
不过在效率方面,建议你可以尝试一下PHP的预编译,这技术可以最大限度地减少我们日常关注的“代码部分”的资源开销。
题外话:其实很多人都误会了Smarty,说Smarty比较大(代码量),而且缓存效果不明显,其实,Smarty是最适合“PHP预编译”的PHP模板引擎,从这个角度而言,预编译情况下的Smarty甚至可以比拟原生PHP代码的速度了。
2010-12-15 19:55:01
#5 kk88
PHP预编译没听过,google了下似乎是指eAccelerator。
个人不使用smarty也是因为它代码量较大,再就是还要学它的一套语法。3.0的不知道有没有什么改变,等SP正式发布了再研究学习下。
2010-12-15 20:26:22