我和同事们正在选择一个Web框架来开发高流量的网站。我们非常擅长使用node.js + express
和php + symfony2
。这两个框架都很好,但我们有点担心Symfony2,因为它似乎被大多数其他Web框架所超越。
以下是证明它表现不佳的基准测试: http://www.techempower.com/benchmarks/
因此,我们可能会使用node.js + express,但我仍然想知道为什么Symfony2在基准测试中表现如此糟糕。
我和同事们正在选择一个Web框架来开发高流量的网站。我们非常擅长使用node.js + express
和php + symfony2
。这两个框架都很好,但我们有点担心Symfony2,因为它似乎被大多数其他Web框架所超越。
以下是证明它表现不佳的基准测试: http://www.techempower.com/benchmarks/
因此,我们可能会使用node.js + express,但我仍然想知道为什么Symfony2在基准测试中表现如此糟糕。
如果你遇到困难,需要解决与性能相关的问题,有多少人愿意并且能够回答你的问题呢?有多少真实的应用程序已经或者在不久的将来将会使用这个框架创建?
选择一个框架就是选择了一个社区!
...好吧,那是关于它是否重要的部分 ... 现在回到这些基准测试 :)
在这些基准测试的所有闪亮色彩和花哨的图表中,您很容易忽略一个事实,即每个框架仅测试了一个设置(Web服务器、数据库等),而您可以为每个框架选择各种配置。
例如:您可以使用symfony+doctrineODM+MongoDB,而不是使用symfony2+doctrineORM+mysql.
MySQL… MongoDB…关系型数据库… NoSQL数据库… ORM…微型ORM…原始SQL…所有这些混合在这些配置中———苹果和橙子。
几乎所有基准测试的常见问题 - 甚至包括那些仅比较php框架的基准测试 - 在网上找到的以及那些“TechEmpower Web Framework Benchmarks”中发现的是不同的优化。
这些基准测试没有利用那些框架上可能存在的(并且被经验丰富的开发人员熟知的)优化...至少对于symfony2和他们的测试来说是事实。
以下是他们最新测试中使用的symfony2设置的一些示例:
这个列表还在继续...但我想你已经明白了这是什么意思。现在有90个未解决的问题...一个无尽的故事。
像服务器和存储这样的资源很便宜...相比之下,开发时间则显得非常昂贵。
我是一名收取相当普遍费率的自由职业者。你可以选择获得我的2-3天时间...或大量计算能力和存储空间!
当选择一个框架时,你也在选择一个快速开发的工具包——对抗从未满足、不断增加功能的客户的武器...他们会为他们的愿望付出高昂的代价。
作为一个机构(或自由职业者),你希望在短时间内构建功能丰富的应用程序。你将面临某些困境...也许是与性能相关的问题。但你也面临开发成本和时间成本。
什么会更昂贵?额外的服务器还是额外的开发者?