cakephp在一个大项目中的表现

时间:2010-12-14 15:04:16

标签: php cakephp

我必须开发一个大型应用程序(一个广告平台,将获得超过10K用户和100K的列表)选择cakephp建立这样一个网站是一个好主意吗?

非常感谢

5 个答案:

答案 0 :(得分:4)

拉斯穆斯(发明家PHP)并不喜欢cakephp,因为它曾经(他benchmarked一段时间回来,所以事情本来可以改变)真正糟糕的表现。他最喜欢codeigniter,因为它具有最佳性能。低于数字(表现):

cakephp的:

Response time:              0.19 secs
Transaction rate:          25.88 trans/sec

笨:

Response time:              0.03 secs
Transaction rate:         305.90 trans/sec

正如你所看到的那样它很慢(可能已经改变了。你应该做一个简单的基准测试和测试以确定我猜)。

无框架框架

他还有article解释他将如何编写他的架构(没有框架以获得最佳性能)。

他在结论中说:

  

许多框架可能看起来很棒   乍一看很吸引人,因为他们   似乎减少了Web应用程序   发展到几个微不足道的   导致一些代码生成的步骤   并经常自动模式检测,   但这些快捷方式很可能   因为他们是你的瓶颈   通过牺牲来实现这种简单性   灵活性和性能。

进入光盘将是一个真正的性能杀手。

这是你应该记住的最重要的提示。

我的表现提示

  1. 使用最新的php(5.3),因为我读到它比旧版本有很大的速度提升。
  2. 确保您有足够的内存。您需要在内存中存储大量数据才能获得良好的性能。
  3. 你真的需要APC(正确配置)才能获得良好的性能,因为它会将PHP操作码放在内存中,这会给你带来巨大的推动。
  4. 您应该使用redis / memcached / etc。
  5. 将活动数据集保存在内存中
  6. 如果你必须做长时间运行的任务,请通过消息队列处理它们(redis / gearmand / kestrel / etc)
  7. 关注YAHOO's best practices以加快您的网站速度。
  8. 不要使用繁重的PHP框架。使用像Codeigniter(Benchmark it)这样的东西。

答案 1 :(得分:1)

我们有一个Cake网站每天运行20,000个唯一身份用户(有大约8,000个列表)没有任何问题 - 这可能是3年没有更新的安装。因此,尽管你所谈论的规模还不尽如人意,但我认为这并不像有些人想的那么糟糕(而且这些日子无疑更快)。

我发现CodeIgniter比Cake更好,但这是个人的首选:)

答案 2 :(得分:0)

考虑到你希望为一些用户提供服务这一事实,我会建议你制作自己的剧本(我不知道你有多少经验),或雇用别人为你做这件事。

但是,由于您几乎没有提供有关您具体案例的任何详细信息,我建议您更详细地重述您的问题,或者访问专家进行聊天。这对你很有帮助,特别是如果你没有经验的话。

答案 3 :(得分:0)

这是一个可怕的想法,不会扩展。保持它的重量轻,并使用memcache。

答案 4 :(得分:0)

也许你可以在CakePHP中构建应用程序的管理部分,因为它没有那么多的流量,你可以只为网站的高流量部分使用常规PHP,Memcached等,例如提供广告