性能,Zend Route vs Apache mod_rewrite

时间:2011-11-19 20:14:16

标签: zend-framework mod-rewrite zend-route

与Zend Router相比,mod_rewrite的速度有多快?是否应该放弃使用Zend Router并使用mod_rewrite在apache的虚拟主机定义中使用重写规则执行相同的操作?

差异是否非常显着?

我听过很多人说mod_rewrite导致一些高流量网站崩溃,我想知道在使用ZF进行开发时是否应该关注这个问题

2 个答案:

答案 0 :(得分:2)

这是一个提示:只需看看C和Php(LAMP环境)之间的性能。

...

完成?

如果我没错,C通常比Php字节码快35到40倍。

想象一下,Apache有自己的mod_rewrite

mod_rewrite是100%Gnu C(如果我错了,请纠正我)并拨打也是100%C的PCRE。

知道Regexp是预编译的,嗯,错误......我可以走得更远吗?

没有冒犯,但知道这一点,你很快就会猜到你最好尝试使用RewriteRules。如果您对此有所了解,可以明智地将RewriteRules和rewritemap混合使用以获得非常非常的快速HTTP服务器。

希望这有帮助

答案 1 :(得分:2)

听起来像你正在走向过早优化。虽然仅使用mod_rewrite进行路由可能比mod_rewrite + ZF路由稍微快一些,但是在可维护性和灵活性上牺牲的速度是否提高了1-2ms(可能更少)?如果您有一个应用程序,您知道(通过基准测试)路由是您的瓶颈,并且您已经用尽了所有这些问题的标准解决方案,那么您应该只考虑这样的行动方案。

至于mod_rewrite本身,我已经看到它崩溃的网站,但只有在规则编写错误时(导致它多次重写相同的请求)。如果您只是使用ZF的默认规则,那么您不需要关注这个问题,该规则只是将所有请求重写为一个PHP文件。