2010-12-01 85 views
2

关于框架的许多对话倾向于讨论易用性和开发速度。这些问题很重要,但它们往往来自于为不同客户反复创建新的低流量项目的开发人员。在这种情况下,尽可能在最短的时间内为客户打下坚实的解决方案是非常重要的。我自己在这方面经营了很多年,并且使用了许多MVC框架并取得了很多成功。哪些PHP框架可以处理大规模应用程序?

但是,当您在单个高流量应用程序上工作几年时,该怎么办?现在易用性和开发速度开始重新回到可扩展性和速度。无论使用多么容易,或者如果应用程序因速度和规模而无法运行,编写代码速度有多快都无关紧要。

对于任何大规模开发人员而言,我的问题是,框架在这种情况下仍然有用,如果是的话,哪些在大规模生产环境中成功使用?

共同框架:Zend公司,交响乐,codeignitor,CakePHP的

+3

让我们没有其他框架战争在这里。其中任何一个都可以接受。这就是你如何利用缓存和其他技术来发挥作用。 – 2010-12-01 01:58:52

+0

我没问过哪个更好。我询问是否有实际在这个大规模领域工作的开发人员在现有框架中取得了成功,或者因为规模而被迫构建定制解决方案。 – tom 2010-12-01 02:08:51

回答

2

PHP的创始人喜欢笨(过去)最好的,因为它是当他基准它最快的框架。您可以通过here收听视频。

12

当涉及到大型应用程序时,它不是您应该关注的框架,而是数据库。

首先确定要使用哪个数据库,然后查找对该数据库具有良好支持的框架。如果您希望您的应用可以扩展到无限大小并且速度仍然很快,那么您应该从一开始就消除Mysql作为一个选项。

寻找NoSQL解决方案,找到你喜欢的解决方案。 Cassandra,MongoDB,CouchDB是前三名的选择,但也有其他的选择。所有这些都是相当新的,但互联网上的一些最大的网站正在使用它们。做你的研究,选择数据库,然后选择框架。

我不知道大部分的框架,我看着Zend和Symphony2,都支持MongoDB,两者都很快。我会看看这两个中的任何一个,没有理由去其他地方看。

但是的确,如果你打算编写一个非常大的应用程序,你应该写自己的代码并且不要使用框架。这样你将只有你需要的功能和你不需要的功能。记住大多数框架为您提供了更多功能,然后您真正需要。不必要的功能通常会减慢您的应用程序。 如果你想要一个快速的应用程序,那么它必须是精益,只做你所需要的,没有别的。

1

要添加到什么别人已经说过:

你可以使用任何框架作为起点开始。随着应用程序变得更大(我的意思是BIG),您可以开始修改框架并根据您的应用程序的特定需求对其进行自定义。毕竟,框架是大多数问题的通用解决方案。

如果您的应用程序变得非常大,您应该选择您最适合的框架,并根据您的需求定制它。没有人担心,当你还没有他们时,有一百万名游客。雅虎在其书签和答案网站上使用了

3

symfony。 你应该注意他们放弃ORM所以数据库仍然是缩放的主要关注点(如Dmitri陈述),你可以阅读更多关于它here

位DailyMotion是also using symfony

对于任何大规模开发人员,我的问题是,框架在这种情况下仍然有用,如果是的话,哪些在大规模生产环境中成功使用?

我见过基于symfony的应用程序成功地扩展到数以千计的用户,因此是一个强有力的候选人。

-3

WordPress.com大约是22最流行的网站在世界上,它运行在(你猜对了)的WordPress,这是一个很大的开销的框架。所以这绝对是可能的。

无论您使用的是框架或没有,你最终在同样的问题作为工作的您的网站获得到大规模。基于框架的构建意味着您在处理其他扩展问题时会遇到更少的问题(无需编写自定义框架)。但是,您可能需要扩展或调整该框架以适应您需要扩展的任何技术。

而在一般情况下,我会建议是,你不开拓自己的路。找到与您正在构建的应用程序或网站相当的应用程序或网站,并找出他们用于构建该网站的技术和技术(很多像WordPress.com,Twitter,Google项目都有文档记录或有开心的开发人员)并使用相同的技术和技术技术和技术。你会从中受益,他们提前计算一切。

相关问题