我来自Codeigniter背景。我已经用了三年了,非常喜欢它。这很简单很棒。
我已经使用Codeigniter构建了大量网站,但我正在寻找一个新的PHP框架来学习。
这一变化的主要原因是一个潜在的大项目即将来临。它不会有很多用户(最多可能100个),但服务器产生的出站流量将是巨大的。该项目将通过FTP一个接一个地传输数千个文件(大小从1mb到几百mb)。它还处理上传数百个文件的用户。
这个项目的关键是速度。系统需要通过脚本的运行(它每次通过FTP发送文件时运行一个长脚本来收集文件,它的类型和它的目的地)尽可能快地将性能问题降至最低。我知道文件的传输只会像服务器那样快,并且确实和最慢的瓶颈一样快,但在这里我尽量尽量减少代码中的瓶颈。
经过一番研究后,我喜欢Laravel的外观并安装它以掌握它。但它的速度可能是一个问题,因为它被测试比Codeigniter慢?大流量和大量的PHP解析会慢下来我知道Phalcon基于C从而使它成为最快的框架,Phalcon会是更好的选择吗?
非常感谢任何想法:)
答案 0 :(得分:7)
我不确定您的问题是否会被删除,因为它是一种意见(根据指南和所有意见)
但是IMO - 尽管Phalcon的C版本速度很快,但我现在发现Laravel 4(Laravel 3用户在退役前从Codeigniter转换)与Laravel 4相比 - 它与已知的网络和架构有很多集成。
不打击Phalcon因为我对它的使用非常少但是这里有一些Laravel的子弹:
使用composer轻松实现模块化:所有软件包都可以使用当前的PSR标准从作曲家导入,以快速部署Codeigniter缺少的依赖项。
它可以遵循您想要的任何风格:PSR-0和PSR-4。它是一个自然的MVC,但您可以轻松使用TDD(或BDD)和其他格式。虽然这对一些人来说是一个糟糕的子弹,但它在适应各种作品时提供了很大的灵活性。
IoC内置于APP中。为了使用IoC
Taylor Otwell非常积极地调整和微调框架。它是一个非常活跃的繁荣社区(Laracon NYC刚刚通过,接下来是Laracon Amsterdam),所以你不会缺少支持。
许多已知的应用程序预先集成了从Queues(beanstalk,IronMQ)到邮件程序(swiftmailer),甚至Cache系统(Redis或其他)的框架。界面在功能方面是直截了当的 - 更糟糕的情况?只需延长即可开始推出。
可读性:很多结构以及ORM(如果你选择使用Laravel的本机ORM称为Eloquent)都是关于你的代码的可读性,尽管下面是复杂的。所以它会缩放正确(很多人切换状态相同)。
那些转过身并想知道你的人的一些进一步读物: http://www.web-and-development.com/laravel-vs-codeigniter/
和 http://mulzer.tumblr.com/post/24141993116/12-reasons-you-should-switch-from-codeigniter-to
现在Phalcon对Laravel的子弹速度: 使用Laravel + APC +进行一些其他调整,您可以获得与它相近的东西,同时为您提供从Laravel获得的所有灵活性。
最后,如果你需要并排比较: http://vschart.com/compare/phalconphp/vs/laravel
答案 1 :(得分:5)
如果仅仅考虑速度,请看一下这个基准:
http://systemsarchitect.net/performance-benchmark-of-popular-php-frameworks/
我会使用phalcon,因为它在c级别创建的基本上与php本身相同。
在撰写此编辑时,上述网站无法使用。以下是archive.org的快照: https://web.archive.org/web/20160329072449/http://systemsarchitect.net:80/2013/04/23/performance-benchmark-of-popular-php-frameworks/