15-07-2013, 08:22 PM
Je pense que tu ne devrais pas t'inquiéter des problèmes de performance de MySQL (ou que n'importe quel solution SQL) : ça peut aller très loin sans flancher. Bien plus loin que la grande majorité des jeux Web (et a fortiori des jeux amateurs développés convenablement).
On peut bien se poser des questions sur les peformances ou l'efficacité d'un système, mais on ne peut pas agir dessus avant d'avoir mesurer quoi que ce soit. Or, pour mesurer, il faut avoir une application qui tourne. C'est bien par là qu'il faut commencer.
La plupart des applications Web un minimum complexes font facilement 20 requêtes SQL par requête HTTP, d'autant que le seul nombre ne suffit pas tant il peut y avoir de disparités entre deux requêtes SQL (ou même la même requête exécuté à un moment ou un autre).
Ce sur quoi il faut t'interroger, c'est plus sur l'architecture : faire une application Web monolithique, faire une application Web qui effectue la plupart des tâches en background, ou bien des mini-applications qui communiquent ensemble, etc. C'est ça qui te permettra d'avoir une application rapide ou non.
Pour ce qui est du push, je t'encourage à trouver une alternative à Juggernaut puisqu'il n'est plus maintenu. Tu peux par exemple regarder du côté de Faye ou même opter pour un serveur de WebSocket pur. Le meilleur choix serait sans doute un serveur de Server Sent Events : ce n'est pas forcément le plus simple à implémenter, mais c'est une technologique qui ne sera pas bloquée par un firewall sur un réseau d'entreprise ou d'école (deux cibles de choix pour un webgame).
On peut bien se poser des questions sur les peformances ou l'efficacité d'un système, mais on ne peut pas agir dessus avant d'avoir mesurer quoi que ce soit. Or, pour mesurer, il faut avoir une application qui tourne. C'est bien par là qu'il faut commencer.
La plupart des applications Web un minimum complexes font facilement 20 requêtes SQL par requête HTTP, d'autant que le seul nombre ne suffit pas tant il peut y avoir de disparités entre deux requêtes SQL (ou même la même requête exécuté à un moment ou un autre).
Ce sur quoi il faut t'interroger, c'est plus sur l'architecture : faire une application Web monolithique, faire une application Web qui effectue la plupart des tâches en background, ou bien des mini-applications qui communiquent ensemble, etc. C'est ça qui te permettra d'avoir une application rapide ou non.
Pour ce qui est du push, je t'encourage à trouver une alternative à Juggernaut puisqu'il n'est plus maintenu. Tu peux par exemple regarder du côté de Faye ou même opter pour un serveur de WebSocket pur. Le meilleur choix serait sans doute un serveur de Server Sent Events : ce n'est pas forcément le plus simple à implémenter, mais c'est une technologique qui ne sera pas bloquée par un firewall sur un réseau d'entreprise ou d'école (deux cibles de choix pour un webgame).