Is Phalcon really so good?

Phalcon recently gained a lot of popularity, all thanks to different approaches to the problem of applications performance. In short, they achieved what other tools are missing – really high level of efficiency in the processing code.

Check out their official website for details.

How does it look in practice? In fact, the results are very impressive (compared to other leading frameworks), because the tests RPS (Requests Per Second) and TPR (Time Per Request) reaches at least twice better results than its competitors. Also, in the challenge with HHVM (HipHop Virtual Machine) from Facebook, high-level language – Zephir (which is the Phalcon’s basis) wins in all benchmarks. However, an entry about this will be published another time, and now I will try to focus on the pros and cons of the Phalcon. Below you can find charts which are showing the benchmark tests results. There are more than three frameworks (mentioned in the article) – it’s just to compare with other popular tools.

As you know, this kind of data may not mean anything, because everything depends on the dimensions of the application and performance of the machine, which is serving it. Low performance of the software is frequently caused by many, wrongly constructed queries to overflowed and unwisely designed database, which is even served by weak hardware without any SSD. Most common this is the reason of long delays. In that case efficient code won’t change anything so you should ask yourself at this stage – is it worth it?

I don’t think so. Personally, I believe that tools such as Symfony and Laravel are better equipped to be the core of medium and large applications, and this is because it’s actually facilitate the programmer’s work and relieves the customer from costs. The new functionalities are produced faster, the code is much better organized, finding support and consultation are also easier than if we were doing the same thing in Phalcon, and the introduction of a new team member into the project is not a problem, because he should actually know this environment from other projects. As a programmer, I believe that software development with this framework makes sense, but you have to think about it seriously and consider all the options (not just performance) before it’s too late. This framework has its own, very narrow purpose. From this point of view, Symfony and Laravel offers much more, have better support and they are not as weak as statistics show. You can squeeze more from each code, it’s just matter of time and team experience.

An important feature that distinguishes Phalcon is it’s size. At the start application doesn’t weigh practically nothing and the right component (extension) size is about 3MB. It makes Phalcon easy to migrate and work with at the start, but the lack of imposed structure and any files can introduce chaos and slow down the development at an advanced stage of the project.

In conclusion, I think that Phalcon is the best for small applications, and the idea has a future and will certainly put the PHP language into a new age, despite the fact that there is a similar, less known project (called “yaf”). Anyway Symfony and Laravel are unbeatable with more complex projects on which work is in progress more than a few dozen days. So it all depends on what you want to achieve and at what cost.

author: Maciej Tomaszewski