D'apres le benchmark que je n'ai pas testé. mais je pense que c'est assez credible.

un compromis entre cakephp et un dev perso ?

http://www.slideshare.net/darkredz/intro-to-doophp

20 réponses


real34
Réponse acceptée

Bonjour,

Est-ce que tu développes le nouveau Facebook avec plusieurs milliers d'utilisateurs simultanés ? Si oui tu as de la chance car tes revenus te permettent en théorie d'avoir le temps d'optimiser tout dans les moindres détails ... C'est pourtant très rare. Le site du boulanger du coin ou l'application interne à utilisation métier n'a pas besoin de grignoter les quelques millisecondes de différences au final.

Cela fait presque 6 ans que je développe avec CakePHP et je n'ai jamais (je dis bien "Jamais") eu de problèmes de performance dûs à CakePHP. A chaque fois les optimisations que j'ai dû apporter étaient dues à des "erreurs" de la part de développeurs : requêtes non optimisées, ajout de mise en cache pour des valeurs récupérées régulièrement, optimisations JS / frontend (Pagespeed) ...

Voici quelques exemples de sites à haut traffic faits avec CakePHP :
* http://www.cyclingnews.com/teams
* http://www.bienvenue-a-la-ferme.com/
* http://fondation-maladiesrares.org/
* ... et si je ne me trompe pas ce forum ;) http://www.grafikart.fr/

Je te laisse réfléchir sur ce que tu préfères valoriser ... millisecondes ou communauté + perennité du projet + style de développement. J'ai fait mon choix il y a plusieurs années ;)

personnellement je trouve cakePhp suffisamment rapide. Chaque requête effectuée je sais d'où elle viens à peu près et je vois pas trop comment réduire considérablement la charge avec un dev perso (sauf peutêtre en passant une année dessus).

sylvain
Auteur

hello.suffisament rapide par rapport a quoi ?

sylvain
Auteur

je viens de tester doophp et effectivement c est assez agreable.

j'avoue aussi que j'en ai pas tester beaucoup ^^. c'est vrai aussi que les benchmark sont impressionnant. cependant je sais pas si j'aurais la motivation pour tester d'autre framework. par contre pour ceux qu'il veut debuter avec un framework et qui en essaie plusieurs c'est sur qu'il vaut mieux commencer par regarder ceux qui sont plus rapide.

sylvain
Auteur

le probleme est que cela necessite un apprentissage different. chaque framework a sa propre philosophie. j aime bien dans cake sa rapidite pour faire des petits devs ou maquettes. et surtout les tutos de grafikart.
sans quoi je serais encore a la rue.

Cakephp est fait pour de petit projet sans trop de trafic mais peu quand même supporter de forte charge si le tout est bien codé.

Pour les plus gros projet à fort trafic il est conseiller d'utiliser symfony qui est un très bon framework quoi que je ne les jamais utiliser. ( ex: dailymotion est réalisé avec symfony )

Personnellement cake me suffis amplement si mes code sont optimisé.

sylvain
Auteur

mouai sur symfony je suis sur que ca ne tiendrais pas la charge du tout. le fait que dailymotion l utilise ne veut rien dire. c est l usine a gaz pour les societes de consulting pour permettre de vendre des prestations.

bref les graphiques parle d eux meme. J avais une preference avec code igniter. mais il fallait tout faire. car il impose tres peu de choses a savoir sur le framework lui meme.

les benchmark de symfony c'est pas la joie non plus. m'enfin les tests sont réalisé avec un helloworld donc peutetre que quand le projet grossi les benchmark de cakephp et de symphony diminiue très peu alors que les autres diminue un peu plus vite (peutêtre même pour revenir a peu près au niveau de cakephp, on peut toujours réver ^^)

sylvain
Auteur

Euh oui et non, sur le site de doophp, il est repris le test avec des choses plus complexe qu'un hello word
et les perf sont assez edifiant.

"In this test, we compare the original DooPHP's Hello World benchmark with basic features of the framework. The 1st test outputs Hello World using the template engine to display the words. The 2nd test had database connection and models configured and setup. It executes a simple SELECT * FROM query to a table in the DB. The last test is aimed for production mode where configuration data are cached and Doo deploy.php is used. Doo's deploy.php is a combination of several classes that are core to Doo to reduce file inclusion.
"

et ben deja le db test (et le blog) sont en dessous du helloworld de cakephp, donc après a voir comment se comporte cakephp avec les même choses. ça se trouve ça s'équilibre, genre db test cakephp a 1150 et blog cakephp a 1050

sylvain
Auteur

tu as fait le test ?

non mais en tout cas tout ça m'intéresse et si tu fait des tests je suis intéressé par tes résultat et tes réactions!

sylvain
Auteur

Je ne développe pas le nouveau Facebook mais je ne veux pas d une usine a gaz. Au départ mon projet était sous wordpress. Quand j ai vu les performance et la complexité j ai déchanté .
Deuxième refonte, je vais le faire sur cakephp, parce que ça me semble pas mal. Même si parfois faire des requêtes sql devient tout de suites prise de tête

Le site de grafikart tourne super bien et il me semble que c'est du cakephp !!!!
De plus par exemple pour faire tourner un site comme grafikart faut-il avoir un serveur didié ?

sylvain
Auteur

c est du cakephp et c est lent...
enfin bon avec un mecanisme de cache il s en sort. la ou sur un micro framework ca aurait depoter.
il y a aussi un bon cote. c est plus rapide a developper des fonctionnalite

sylvain
Auteur

je veux dire aussi qu il n y a pas de bon ou mauvais choix. juste le choix qui convient le mieux pour ce que l on veut faire.

comme le matin quand tu vas au boulot avec ta smart parce qu elle consomme pas. et que le week end tu pars en famille avec la berline famillial pour aller a la plage.

Fait ton propre framework si tu trouve que c'est pas optimisé ou carrément code tout toi même. Il y a quelque chose a comprendre, le but d'un développeur n'est pas de trouver l'ultime framework, le but d'un dev c'est de faire son projet le plus rapidement possible, donc d'étudier quelle frameword a le plus d'avantage pour son projet et qu'il connais bien sur. Si on fonctionnais comme toi je pense que les développeur perdrais énormément de temps à tout le temps apprendre de nouvelle technologie.

Maintenant tu le trouve lent... Peut être mais suffisent pour des sites de moyenne audience. Maintenant je n'apprend rien quand on sait que les plus gros site web fonction avec leurs propre framework. Peut être que celui que tu propose est intéressent mais je ne pense pas qu'il propose tout se que propose cakephp. Et je serais chef de projet tu me propose ton framework je te répond "perte de temps". Après à voir par la suite si il a un réelle intérêt.

Et autre info ne mélange pas cakephp et wordpress, se sont deux choses bien distinct et on ne les utilisent pas pour faire les même projets.

sylvain
Auteur

J'ai eut un entretien chez SFR et quand je lui ai dit que je connaissais le framework Zend, il a dit qu'il prefere un dev pure php, car les developper framework ne savent plus optimiser les performances.