【问题标题】:This framework cannot be suitable for large scale project? [closed]这个框架不适合大型项目吗? [关闭]
【发布时间】:2011-04-06 06:41:07
【问题描述】:

我使用 Symfony 开发了一个项目,在我的笔记本电脑上本地加载一个页面平均需要大约 500 毫秒。我很担心。这台笔记本电脑目前只为我服务,但是当它变成一个与 facebook 和 mySpace 一样大小的大型项目时会发生什么?

当然,Symfony 不适合像 YouTube 这样的大型项目,原因有很多?

感谢您的宝贵时间。

马吕斯

【问题讨论】:

  • 在担心底层技术之前,我会担心发展到像 Facebook、MySpace 和 YouTube 这样的规模。
  • 感谢您的意见。我担心速度。M
  • 我将标题从“This framework..”更改为“Symfony 是否适合大型项目?”当前的标题信息量很大。

标签: php scalability frameworks


【解决方案1】:

您使用的任何框架都将受到您为抽象付出的代价。使用 ORM 时也会发生同样的事情,您可以从抽象中受益,但您需要支付 ORM 的开销来为您提供它所提供的东西。

在你的情况下,正如我的教授总是告诉我的那样:“让你的应用程序正常工作,然后担心性能。”现在这并不是说在开发过程中你不应该意识到性能损失和算法效率,而是说这仅次于实现你想要的结果,然后你可以回顾你的代码并找到成本高昂的地方大多数并在这些方面工作。

【讨论】:

  • “让您的应用程序工作,然后担心性能。”所以这就是为什么我必须扯掉头发并不断思考如何通过使用前端代理和类似的东西(我是系统管理员)来使 Web 应用程序正常运行。在某种程度上,“让它工作,稍后优化”是一个明智的提示,但如果你开始工作的框架是缓慢的猪,“Hello world”页面需要半秒钟,你到底如何优化它?通过改变框架本身?
  • @Janne,我怀疑框架应该单独受到指责;根据我的经验,大部分责任在于程序员的技术(或缺乏)和编写高效代码的能力(再次或缺乏)。如果这个人的页面加载需要 1/2 秒;他可能是一个非常新的程序员,使用了很多“剪切和粘贴”技术,甚至更糟糕的程序流程。
  • Symfony 并不是一头呆滞的猪,它的“Hello World”页面要花半秒时间,我可以从经验中保证这一点。
【解决方案2】:

首先,您的笔记本电脑在这方面承担了两方面的工作——作为客户端和服务器。虽然这在大多数机器上应该不会很明显,但特别是笔记本电脑可能会遇到磁盘访问瓶颈(笔记本电脑的硬盘通常较慢 -> 功耗较低)。

其次,更重要的是,您可能正在查看处于开发模式的网站。许多框架,包括 Symfony,都有“开发[opment]”和“生产[uction]”等模式。 Devel 有额外的日志记录,自动重建自动生成的类等,而 prod 有较少的日志记录,启用缓存,并且类只在操作员的请求时重新生成。

特别是由于第二点,框架在开发模式下会变慢;尝试切换到生产模式,差异应该很明显。

【讨论】:

    猜你喜欢
    • 2011-02-21
    • 2013-07-24
    • 2010-09-07
    • 1970-01-01
    • 2013-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-10
    相关资源
    最近更新 更多