08-09-2010, 10:18 PM
(Modification du message : 08-09-2010, 10:22 PM par Sephi-Chan.)
08-09-2010, 10:26 PM
(Modification du message : 08-09-2010, 10:26 PM par Sephi-Chan.)
En les ayant… Tant que tu ne les as pas, ce n'est même pas la peine de s'intéresser à de telles solutions.
Quand on a besoin de stocker des choses qui sont très souvent consultées, le mieux est d'utiliser une solution de stockage en mémoire comme Redis ou Memcached. C'est fait pour et c'est largement éprouvé. Bien sûr, il faut un serveur dédié, très accessibles de nos jours. Sephi-Chan
08-09-2010, 10:27 PM
Il existe plusieurs logiciels pour simuler la charge sur un serveur :
http://httpd.apache.org/docs/2.0/programs/ab.html http://jakarta.apache.org/jmeter/
08-09-2010, 10:44 PM
et quelle est la différence entre un Memcached et l'utilisation de Table memory Heap mysql ? (hormis qu'il n'y a pas de différence et qu'il faille un dédier...)
pour le moment je n'ai pas 10000 joueurs il n'y a que moi...
08-09-2010, 10:53 PM
(Modification du message : 08-09-2010, 10:53 PM par Sephi-Chan.)
Et bien MySQL est une base de données relationnelle alors que Redis et Memcached sont des systèmes de stockage par clé/valeur.
En gros, ta base de données Redis (ou Memcached) est un tableau associatif alors que MySQL est une base de données interrogée via SQL. Sephi-Chan
08-09-2010, 11:28 PM
non mais un benchmark ça sert juste à comparer des algorythmes, des types de requetes et/ou d'accès aux données, etc..
je ne te propose pas de créer un super bot qui joue à ton jeu et d'en lancer 100 (quoique...) mais par exemple tu fais un petit script en python qui lance 100 threads qui vont chacune faire une requete aléatoire parmi une pioche de requêtes prédéfinies et qui vont appeler ton script en faisant une requête sur le port 80 à l'adresse 127.0.0.1. Et ce script, la première fois tu lui fais faire tirer ses infos de la session, et la fois suivante tu lui fais tirer de la base SQL. Dans les deux cas la réponse doit être la même. tu compare le temps que ça à mis au total dans ton script python pour chaque type de script php. ensuite tu recommences mais en inversant l'ordre des deux types de scripts, puis tu recommences le tout en "restartant" apache (ou autre serveur) avant chaque test, etc.. à la fin tu verras ce qui est le plus rapide. Mais ça évidemment ça ne simule pas des joueurs, ceci dit tu es libre d'implémenter le script d'appel et donc de lui faire faire potentiellement tous les actes d'un joueur normal. C'est ce que je ferais. Ensuite, les outils proposés par Anthor font peut-être ce genre de choses en mieux, je te suggère vivement d'aller voir.
09-09-2010, 07:16 AM
Pour simuler les actions des joueurs, tu peux utiliser des outils de tests comme Selenium.
Mais bon, de toute manière c'est bidon comme solution, donc pas besoin de la tester. Ce serait bête de faire reposer ton jeu sur ce genre de fondations. Sephi-Chan |
|
Sujets apparemment similaires… | |||||
Sujet | Auteur | Réponses | Affichages | Dernier message | |
sessions VS mysql ... optimisation ? | MaXOhBalle | 4 | 2 484 |
21-09-2009, 04:35 PM Dernier message: MaXOhBalle |