普通PHP与DooPhp中的代码

时间:2010-10-13 03:13:17

标签: php doophp

我见过DooPHP是世界上最快的MVC框架,我打算将其考虑用于构建能够处理超过100,000个并发用户的关键任务网站。

我必须在共享主机上从头开始构建我的网站,并在VPS上运行CPanel,它使用Apache 2.0.x和PHP 5.2.14以及MySQL。性能方面,在编写PDO(访问数据库)+ PHP与DooPHP编码时会有很大的不同吗?

4 个答案:

答案 0 :(得分:5)

从技术上讲,不使用框架应该总是更快,因为你只是为了你需要的东西编写代码。

假设您精通PHP,并且知道如何编写好的代码。

框架将缩短开发时间。

如果性能是一个关键问题,请查看缓存操作码,服务器端缓存,远程过期标头,CSS spriting等等(有很多)。

答案 1 :(得分:4)

你提出了一个很大的问题,哲学的答案是没有两个环境是相似的,没有两套要求或工具包是相似的。这里“最快”反映了开发时间而非性能。这些问题必须通过基准测试来回答。

答案:在程序完成之前不要犯下优化罪。

回答#2:但是当你继续时,请注意表现。

忽略工具包一秒钟,只看PHP和机器。你能做的最好的事情是优化服务器,然后注意休息。在该服务器级别,我将仅解决缓存和内存占用 - 并在PHP环境之前/之后显示测量的趋势。

使用操作码缓存的一个有趣的副作用是更小的内存占用。反过来,这使您能够向上扩展。机器虽然受到重创,但它有更多的内存来处理即时请求,并且有更多时间从交换借用中恢复。

下面这张图有点令人困惑(并且被剪裁),但它显示的内容与未优化的内存占用量相比是未经优化的。最低的边界是优化后的内存占用量。

alt text

长轴是一种抽象类型的页面(主页与帖子与页面对等等),从普通,简单到复杂。另一个轴是缓存,没有操作码缓存到缓存,操作码缓存。

这说明您可以通过重新编译PHP / Apache来单独使用操作码缓存来进行改进。它可能是最大的优化增益,而且您不需要意识到您在工具箱中使用模板语言,该工具包作为运行时替代C运行,这是对机器代码的编译增强。 (在这里插入更多的头发分裂的书呆子......)

经过这次特殊优化后,该机器能够获得更多的突发流量(从每小时200个请求到700个)。

祝你好运。

答案 2 :(得分:3)

就性能而言,DooPhp无疑是最快的php框架之一。除非您的网站具有令人难以置信的基本功能,否则您应该忘记在没有任何框架的情况下使用直接的PHP。

如果您的网站甚至超出了基本功能要求,那么您创建的用于运行它的代码在实用性和速度方面不太可能像DooPhp这样的框架。

Apache和Cpanel可以从一开始就不必要地降低速度。 MySql或任何数据库最终都成为瓶颈,特别是在涉及ORM时。

如何从您的盒子中获得更好的性能:

  1. Ditch Apache和Cpanel并替换为Nginx / Php-fpm
  2. 安装memcache和php apc并使用Nginx FastCgi Cache。
  3. 通过精心设计的索引设计一个好的数据库架构
  4. 通过基准测试优化您的MySql查询
  5. 使用像DooPhp这样的框架,它具有您所需的所有基本功能,而且没有臃肿。

答案 3 :(得分:0)

我强烈推荐DooPHP,它非常容易学习,并且比其他顶级PHP框架快得多.. firefox addons使用 CakePHP,这是在{上测试的最慢的框架之一{3}}