When comparing Spring MVC vs Phalcon, the Slant community recommends Phalcon for most people. In the question“What are the best backend web frameworks?” Phalcon is ranked 10th while Spring MVC is ranked 11th. 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 Great documentation that covers almost everything
The official documentation covers virtually everything. The official website also has a series of great tutorials in video and text formats. There are links to Github repositories for Spring sample applications and there are also a lot of third-party tutorials out there for the fact that Spring MVC is so widely used by many experienced developers.
Pro Spring MVC has a massive community
Being the oldest and most used JVM web framework, means that Spring MVC has a massive community of followers who are very helpful and have provided numerous tutorials and answers on SO.
Spring even holds an annual conference called SpringOne. The Spring forums and SO are great places to ask and get help about anything Spring related. The website blog and newsletter keep developers informed on every news related with the framework.
Pro Spring apps are highly scalable
Applications are meant to scale as the framework is used in large-scale applications worldwide. Components like EhCache are used to scale memory cache and it also contains components used for parallel processing.
Batch enables processing of large volumes of records and job processing statistics.
Pro Spring has an extensive ecosystem
It is based and is dependent on the Spring Framework, therefore it benefits from tools like for example Roo and Spring Tool Suite and many more tools included in the Spring Framework. All Maven dependencies are available in a public Maven repository.
There are also 3rd-party solutions for Spring, such as MyEclipse which includes scaffolding capability for Spring MVC.
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..
Cons
Con Updating and code maintenance can be a grueling task if you are a beginner
Updating your project is manageable if you’re already familiar with the framework and the project itself, but if you’re just diving in it can be a little overwhelming and hard.
Con Bloated legacy DI API
Spring DI is bloated and rather complex in comparison to CDI.
Con Complex and not newbie friendly
Spring MVC architecture although simple has a lot of layers and abstractions which can be hard to debug if problems arise. It is also highly dependant on the Spring core.
It's an old and mature framework that has numerous amount of ways to extend and configure it – and this actually makes it fairly complex.
Con Lacking in UI development
While actually very good and with a very complete and rich feature set to develop and maintain code on the server side, it still doesn't provide any rich framework for building good user interfaces.
Con Unnecessarily slow, bloated, complex, convoluted, wordy, and verbose
Spring is convoluted and XML-ridden. Deploying things on the JVM has always been a pain in the nipple and nothing has changed much since the 90s. All things Java-related are wordy, verbose, and a waste of developer time.
Con Slow Prototyping
If you are looking to build a quick prototype fast and easy, Spring isn't going to help much. It's very large and quite hard to grasp if you are just beginning with it.
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.