JeuWeb - Crée ton jeu par navigateur
Symfony 2 - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Symfony 2 (/showthread.php?tid=6143)



Symfony 2 - patouki - 20-05-2012

Salut tout le monde,

Je viens lancer un sujet qui me semblait important avant de lancer le code de mob projet.
Symfony2 est-il limité?
On parle souvent du manque de performance de symfony2 lors que le site doit gérer des milliers de :langue2:joueurs.
Exemple ici:
http://xhtml.net/php/698-Symfony-2-Zend-commentaire-de-Bertrand-Mansion

Alors déjà Varnish = sf2? Les deux doivent être lies si on veut de la performance?

Enfin voila que des questions...

Merci



RE: Symfony2 - Sephi-Chan - 20-05-2012

Certains frameworks apportent une charge plus importante pour les machines, c'est indéniable et inévitable : c'est le prix à payer pour l'ajour de couches qui aident au développement et qui permette de produire des applications plus robustes.

Ensuite, est-ce un problème ? Développer en suivant certaines bonnes pratiques et avec des outils évolués permettent de mettre en place des applications qui peuvent être déployées sur plusieurs machines : il suffit alors d'augmenter le nombre de machines pour augmenter les capacités de charge de l'application. Ces techniques fonctionnent très bien pour les sites très importants et très fréquentés. Si votre application draine des milliers de joueurs, vous devez générer de l'argent pour payer ce genre d'infrastructures (type Amazon EC2).

Ensuite, Symfony — comm tous les frameworks importants — permet de mettre en place des caches et des systèmes de stockage alternatifs qui permettent souvent d'améliorer les performances, du coup le développeur s'y retrouve.

Enfin, le serveur Web et l'application ne font pas tout, il y a effectivement les à côté : reverse-proxy, load balancer, etc. qui permettent d'améliorer encore les performances.

Du coup, je pense que c'est toujours intéressant d'utiliser un framework pour une application Web, et comme Symfony dispose de la plus grande communauté, il est très bénéfique de se tourner vers lui.


Mais il y a autre chose. Pour les applications Web évoluées, la meilleure solution à mon goût et d'utiliser une application Javascript basée sur des frameworks comme Backbone (ou Spine, ou Knockout, etc.). En ayant une partie cliente très évoluée, on peut alléger considérablement le serveur : ainsi, un visiteur qui se ballade sur le site ne charge qu'une fois la page et ne fait que de petites requêtes Ajax pendant sa visite.


RE: Symfony2 - SorenS - 22-05-2012

Symfony2 limité ? euh ... Youp*rn tourne sur quoi déjà ? :-°


RE: Symfony2 - patouki - 23-05-2012

Linux et apacheapache


RE: Symfony2 - Sephi-Chan - 23-05-2012

Non, Youporn tourne avec Nginx (comme la majorité des sites de cul), c'est trop exigeant pour utiliser Apache. :p

Tant qu'on parle de Youporn, j'en profite pour rappeler que le site n'utilise que Redis comme base de données : tout est en RAM (avec des couches de persistence). Ça a été annoncé par l'un des développeurs sur la mailing list de Redis.

De toute façon, ce n'est pas très pertinent de choisir une technologie sur ce type de critères. Après les gens vont croire que PHP est approprié pour Facebook. Smile



RE: Symfony2 - t.bodeux - 23-05-2012

Je trouve que lorsqu'on se lance dans des projets relativement "compliqué" et lourd, choisir son langage est une chose primordiale.
Comparer les aspects de ce que l'on peut utiliser est très important, pour moi, voila ce qu'il faut se demander sur un langage avant de l'envisager:
- Courbe d'apprentissage.
- Affinité avec sa syntaxe.
- Maintenabilité du code.
- Accès aux plugins ou autres gadgets.
- Disponibilité de mise en place niveau serveur.

En avis personnel, Ruby et Rails offrent l'avantage de fournir un code très organisé, très lisible et du coup fort maintenable. L'utilisation des gems est aussi réellement un plus. Sans compter que l'internationalisation du site est juste ultra simple ... Maintenant, qui dit ruby dit serveur dédié ce qui demande forcément un plus gros budget mais d'un autre côté, si ton application est lourde, cela reste la meilleure solution d'hébergement par la facilité d'utiliser des couches suplémentaires comme la gestion d'une queue, un serveur Push et autres. Il s'agit d'un avis personnel bien sur Smile


RE: Symfony2 - SorenS - 24-05-2012

Faut pas non plus oublier que le langage ne fait pas tout ! Le(s) développeur(s) y est(sont) pour beaucoup Smile

Pour ma part, je trouve que PHP avec un bon framework (sf2, cakephp, codeI, ...) est aussi très lisible, très organisé, etc...

Je pense que la c'est vraiment l'affinité développeur / langage qui est à prendre en compte. Je n'ai jamais réussi (alors que j'ai vraiment essayé) accroché avec RoR, mais énormément avec php & sf2


RE: Symfony2 - Sephi-Chan - 24-05-2012

De toute façon, ce qui est certain, c'est que tous les projets de jeu sont assez complexes pour largement justifier l'utilisation d'un framework.

On le voit assez souvent sur JeuWeb, les rares gens qui arrivent à créer leur jeu le font souvent sans framework et quand je discute (et aide) avec ces personnes, je réalise souvent la grande pauvreté technologique des solutions utilisées, mais d'un côté : ça marche. Ça fait plaisir à mon côté rêveur, mais ça fait pleurer mon côté développeur.

Le fait est qu'utiliser un framework montre une certaine curiosité et une envie de se décrocher des bases. Ça pousse souvent à admettre l'utilisation d'un serveur dédié et la myriade de possibilités que ça débloque (queueing, scheduling, push, etc.).

Enfin, à mon sens c'est un tout. Et je suis d'accord avec SorenS pour dire que c'est finalement le développeur qui est le critère déterminant (ou limitant, selon le point de vue…).