Navigatie overslaan
Hacktisch

Phalcon PHP

Ik wil even een stukje wijden aan Phalcon, een PHP framework dat ik kortgeleden heb ontdekt en waarover ik erg enthousiast ben. Ik zat wat rond te zoeken naar simpele MVC-frameworks en alternatieven voor Laravel, Yii of CodeIgniter. Toen stuitte ik op het volgende grafiekje en was erg verbaasd: een framework dat ik niet ken, dat belachelijk veel sneller is dan alle anderen?


Phalcon is verreweg het snelst vergeleken met andere frameworks
Bron: sitepoint.com

De reden hiervoor is dat Phalcon geschreven is in C, en wordt aangeboden als PHP-extensie. Je krijgt dus geen map met PHP-bestanden, maar Phalcon is in PHP ingebouwd zodra je het hebt geïnstalleerd. Dit is de belangrijkste reden voor de snelheid, naast enkele andere handige codingpraktijken die zijn toegepast.

Ik lees hier en daar dat Phalcon niet erg populair is om voornamelijk deze reden (in C geschreven) en dat veel developers hier sceptisch over zijn. Begrijp ik niet zo goed, ik vind het namelijk juist erg schoon dat ze het op deze manier hebben aangepakt. Het is misschien ietsje meer gedoe om op te zetten en op veel managed hostingpakketten met alleen FTP-toegang zal het waarschijnlijk überhaupt niet op te zetten zijn, maarja die zorgen sowieso altijd voor problemen.
Andere commentaren die ik lees zijn bijvoorbeeld dat het verschil van een paar 100 milliseconden reactietijd van de webserver niet uitmaakt, en dat je keuze eerder moet afhangen van welk framework je het lekkerst vind werken. Ten eerste ben ik het niet eens met de stelling dat de snelheid niet uitmaakt, hoe sneller, hoe lekkerder een site aanvoelt. Maar nog belangrijker voor een site: het feit dat Google sinds enkele jaren sites beoordeelt op snelheid. En ja, daarbij telt elke milliseconde. Dat is de hele reden waarom bijvoorbeeld CDN's überhaupt zijn uitgevonden. En over de keuze van MVC-framework laten afhangen van persoonlijke smaak: misschien ligt het aan mij maar ik vind MVC frameworks qua 'lekkerheid' toch één pot nat. In essentie werken ze allemaal hetzelfde. Dus dan wordt de snelheid voor mij het belangrijkste beoordelingspunt.

Door de recente lancering van PHP 7 is wel een nadeel(tje) van Phalcon te merken: aangezien ze het als PHP-extensie bouwen, moet het ontwikkelteam het voor elke grote nieuwe PHP-versie ook opnieuw in C bouwen. Dat is niet zo gemakkelijk als met andere frameworks die hooguit wat wijzigingen in functies en syntax vereisen.
PHP 7 heeft PHP ook een flinke boost gegeven: meestal worden sites er zo'n 50% tot 100% sneller door als er van PHP 5.X naar 7 wordt overgestapt. Het PHP-team heeft er echt netjes werk van gemaakt (of je zou je kunnen afvragen wat ze voorheen hebben zitten uitspoken, met zo'n snelheidsverschil...). Ten tijde van schrijven is er nog geen PHP 7-versie beschikbaar van Phalcon maar die wordt natuurlijk wel gebouwd, en de verwachting is dat die dan wederom veel sneller is dan de andere frameworks.

Ik heb nu een paar dagen met Phalcon gewerkt en ben dus erg positief, ik heb het idee dat je het verschil in snelheid echt kan voelen. Voor puristen zoals ik is dat erg fijn. Er zijn een aantal handige command line-tools voor het genereren van models of scaffolding. Voor de rest is de structuur en manier van werken erg logisch en begrijpelijk. Ik ben van plan mijn eerstvolgende grote project in Phalcon te bouwen.


© 2017 Hacktisch | Sitemap