0

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

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

4

4 回答 4

5

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

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

框架将减少开发时间。

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

于 2010-10-13T03:17:33.137 回答
4

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

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

答案#2:但在进行过程中要注意性能。

暂时忽略工具包,只看 PHP 和机器。您可以做的最好的事情是优化服务器,然后注意休息。在该服务器级别上,我将在这里仅讨论缓存和内存占用 - 并显示 PHP 环境之前/之后的测量趋势。

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

下面的这张图有点令人困惑(和剪裁),但它显示的是未优化与优化的内存占用。最低的边缘是优化后的内存占用。

替代文字

长轴是一种抽象类型的页面(主页 vs 帖子 vs 页面 vs 等等),从常见、简单到复杂。另一个轴是缓存关闭,没有操作码缓存到缓存,操作码缓存打开。

这说明您可以通过重新编译 PHP/Apache 以单独使用操作码缓存来做出很大的改进。这可能是用最少的努力获得的最大优化收益,并且您不必知道您在工具包中使用模板语言,该工具包作为 C 的运行时替代品运行,这是对机器代码的编译增强。(在这里插入更多令人毛骨悚然的书呆子......)

经过这种特殊优化后,机器能够承受更多的突发流量(从每小时 200 个请求轻松增加到 700 个)。

祝你好运。

于 2010-10-13T03:33:14.400 回答
3

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

如果您的网站甚至超出了您创建运行代码所需的基本功能,那么就实用性和速度而言,它不太可能像 DooPhp 这样的框架那样经过深思熟虑。

Apache 和 Cpanel 从一开始就可能不必要地减慢速度。MySql 或任何 DB 最终都会成为瓶颈,尤其是在 ORM 方面。

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

  1. 抛弃 Apache 和 Cpanel 并替换为 Nginx/Php-fpm
  2. 安装 memcache 和 php apc 并使用 Nginx FastCgi 缓存。
  3. 设计一个具有深思熟虑的索引的良好数据库模式
  4. 通过基准测试优化您的 MySql 查询
  5. 使用像 DooPhp 这样的框架,它具有您需要的所有基本功能而不会臃肿。
于 2010-10-28T22:07:53.727 回答
0

我强烈推荐 DooPHP,它非常容易学习,并且比其他顶级 PHP 框架快得多。firefox插件使用CakePHP,这是在doophp 网站上测试的最慢的框架之一

于 2011-04-27T10:02:38.240 回答