When comparing Phalcon vs FeathersJS, the Slant community recommends Phalcon for most people. In the question“What are the best backend web frameworks?” Phalcon is ranked 10th while FeathersJS is ranked 35th. The most important reason people chose Phalcon is:
Since the framework is and extension built in C it's extremely fast and efficient. It's actually one of the fastest PHP frameworks, and according to some benchmarks it's the fastest framework out there.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Extremely fast
Since the framework is and extension built in C it's extremely fast and efficient. It's actually one of the fastest PHP frameworks, and according to some benchmarks it's the fastest framework out there.
Pro Open source
Phalcon is open source and is available under the BSD License.
Pro Uses Volt template engine
The Volt template engine, which is embedded into Phalcon itself takes it's inspiration from the Jinja template engine and as such it's nice to look at, with a clear and understandable syntax.
Volt also compiles very fast, like Phalcon itself, so it avoids being a bottleneck for the framework's overall speed.
Pro Very flexible project structure
You can set up the base project as you want. It's very flexible
Pro Clean and light project code
Since the framework code is not in the project directory, the code is light and clean.
Pro Customizable with Zephir
Zephir is a high-level language designed to create PHP extensions easily by PHP programmers with no knowledge in C.
Zephir does this by compiling directly to C and then the C program is in turn compiled to be run as a PHP extension. This, coupled with the fact that Zephir's syntax is very similar to PHP makes it a perfect way for PHP developers to use it for customizing Phalcon.
Pro Loosely coupled components
Some components can be used as standalone packages like models, views, etc..
Pro Can sync events between different Node instances
Feather can sync events happening in two different Node processes or even servers in real-time. For example: an event happens in server A, the user connected to server B is instantly notified of that event.
This is done through a central Redis or Mongo collection or through a websocket libraries' clustering library.
Pro Easy REST APIs
Through services, Feathers provides instant CRUD functionality, it also can easily expose a RESTful and real-time API through HTTP/HTTPS and websockets.
Pro Can be integrated in an existing ExpressJS project
Since Feathers itself is built on top of Express (it's a thin wrapper over socket.io, primus and Express) and because of Feathers' highly modular nature, it's very easy to integrate Feathers in an existing Express project.
Pro Plug-in any feature you need
Feathers makes extensive use of modules (which are called Feathers services). These services work like ExpressJS middleware and can be used with app.use('/path', serviceObject)
.
Services help developers keep their applications modular and as minimal as possible, without any unnecessary libraries or bloat.
Pro Support for different socket transports
FeatherJS uses primus which is a universal wrapper for real-time frameworks. Through primus you can easily choose which socket transport you want to use.
Cons
Con Not for shared hosting
Phalcon needs root access to install the PHP extension which is written in C. Developers who plan on using Phalcon must use VPS or Cloud Hosting with root access available.
Con Require good programming skills
Not so easy to use if you want to gain the best from it.
Con Debugging requires knowledge of C
You need to be a C programmer to debug Zephir or C code. Or if Phalcon is not maintained anymore and you have a problem and don't have much skills in C, you will be hard-pressed to find a C programmer to fix it.
Con Not so widely used
Could be problematic to convince the client use this framework in his/her project.
Con Not very beginner friendly
Although the documentation for Feathers is very good, it still needs some configuration in order to get Feathers up for developing something with it.