I'm currently working on a browser-based MMO and have chosen the LAMP stack because of the extremely low cost to start with in production (versus Windows + IIS + ASP.NET/C# + SQL Server, even though I have MSDN Universal). However I will need a PHP framework for this as it's no easy task. I am not restricted by anything other than the ability to run on Linux, as I will use a dedicated cloud hosting solution (and a VMWare image for development) and can configure it as needed.
In no specific order:
I have read a lot of comparisons and I know it's a really hot debate. The general answer is "try and see for yourself what suits you". However, I can't say it is easy for this task and I'm calling for your experience with building applications with similar requirements. So far I'm tied up between Zend and CakePHP by the general criteria, however, all well-known frameworks offer the same functionality in some way or another with different approaches each with it's own advantages and disadvantages.
Edits:
I see you have looked at Zend and CakePHP, but I would like to point you in a different direction.
http://kohanaphp.org/
Kohana is what I would use if I am was still using PHP. They took CodeIgniter and forked it in a way that makes php feel much less file-based and much more object-based. They have a great templating solution, and also have modules for everything you discussed except for ACL (I don't know what that is so maybe they do have it).
Anyway, I think it is worth checking out.
On Scalability
I noticed some conversation on speed. Although I think Kohana handled things very fast for us, I don't think this as much something to do with the framework as it has to do with other tools.
First I have increased speed on many of my php apps by dropping apache for nginx. Nginx with PHP running as fastcgi is much more light-weight and really increased load times for http://ukclasslist.com. We still use apache locally and the copy running on our server is quicker than our local version.
If you are still having trouble with speed, especially with grabbing large chunks of data you should look into memcache.
I'm pesonally a fan of Kohana. I've CodeIgniter prior to this and Kohana (as I see it) is essentially all the good stuff in CodeIgniter without a lot of the limitations. v3 is the latest version of Kohana and is more robust and flexible than v2.
Performance varies depending on how you're using a framework and its own inherent strengths and weaknesses compared to other frameworks. Your best bet is to use APC (soon to be part of PHP 6) or eAccellerator to cache the compiled PHP scripts.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With