JeuWeb - Crée ton jeu par navigateur
Gestion des ressources - 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 : Gestion des ressources (/showthread.php?tid=4242)

Pages : 1 2 3 4


Gestion des ressources - v3rsus - 29-07-2009

Bonjour à tous,
Je suis actuellement en train de créer mon jeu, mais une question me turlupine.
En effet dans la gestion des ressources je vais utiliser les tâches cron.
Mais j'hésite à savoir tout les combien de temps la lancer.
En effet si le jeu atteint un nombre important de joueurs, le lancer toutes les secondes risque de saturer le serveur.
Que me conseiller vous?


RE: Gestion des ressources - Argorate - 29-07-2009

Il faut voir le contexte, et la tache en question.

Personnellement j'ai horreur des crons, on peut toujours faire sans.

Maintenant, il me faudrait plus de details pour pouvoir t'aider, mais une chose est sure, puisqu'un cron dépend pas du nombre de joueur, si tu lances un script toutes les secondes, vaut mieux qu'il soit très court sinon effectivement ton serveur risque d'etre a la ramasse (sauf si t'as un supra serveur qui cout très cher - ce dont je doute^^).


RE: Gestion des ressources - Allwise - 29-07-2009

Si t'as un script à lancer toutes les secondes, c'est pas un cron qu'il te faut, mais un daemon, un script qui tourne sans relâche sur une boucle infinie, en PHP ou autre langage, à ta convenance.


RE: Gestion des ressources - Sephi-Chan - 29-07-2009

Effectivement, si tu penses avoir besoin de lancer ton script chaque seconde, je te conseille d'oublier les jeux par navigateurs.
Si tu as une tâche régulière à effectuer, je te conseille les crons, c'est fait pour et ça évite de pourrir ton code source.

(29-07-2009, 01:34 PM)Argorate a écrit : Personnellement j'ai horreur des crons, on peut toujours faire sans.
Il faut savoir utiliser les bonnes choses au moment approprié. Dans certains cas, se passer d'un cron, c'est pas pragmatique du tout.


Sephi-Chan


RE: Gestion des ressources - DragonMaster - 29-07-2009

Personnellement, j'utilise une méthode JIT (Just-in-Time (j'ai le droit de piquer le nom??)), c'est à dire que je conserve de variable de dernier update et je ne fais l'update du jeu que lorsque c'est nécessaire. Sa me fait sauver les temps mort ou personne ne se connecte (à quoi bon mettre à jour le jeu si personne ne peut le voir?). Aussi, j'ai essayé de moduler les différents éléments à mettre à jour. Ainsi si un joueur se connecte, seul la partie consultable par le joueur se met à jour.


RE: Gestion des ressources - v3rsus - 29-07-2009

Je pense donc que je vais suivre vos conseils.
C'est à dire laisser tomber les tâches cron pour ça.
Et à ce moment là, je ferais en sorte que dès qu'une personne se connecte, cela modifie ses ressources.
Et si un joueur se fait attaquer, pour les ressources qui seront volé, je ferais le calcul au moment voulut.
Merci pour vos réponses.


RE: Gestion des ressources - Anthor - 29-07-2009

Tout dépend de la fréquence et de la priorité des rafraichissements...
Généralement sur un jeu, au moins 4 méthodes peuvent être mises en place simultanément, le cron, les fichiers, les caches mémoires, et l'accès direct.

Sur Tarschool, les 4 méthodes sont utilisés suivant la priorité des données.


RE: Gestion des ressources - Argorate - 29-07-2009

(29-07-2009, 08:46 PM)DragonMaster a écrit : Personnellement, j'utilise une méthode JIT (Just-in-Time (j'ai le droit de piquer le nom??)), c'est à dire que je conserve de variable de dernier update et je ne fais l'update du jeu que lorsque c'est nécessaire. Sa me fait sauver les temps mort ou personne ne se connecte (à quoi bon mettre à jour le jeu si personne ne peut le voir?). Aussi, j'ai essayé de moduler les différents éléments à mettre à jour. Ainsi si un joueur se connecte, seul la partie consultable par le joueur se met à jour.
Exactement...

C'est aussi la technique que j'affectionne.
Un cron c'est completement bete et méchant, ça viens faire les taches systématiquement, même s'il y en a pas besoin, alors que calculer si l'update dois avoir lieu pour la faire uniquement quand un joueur est là et a besoin de la MAJ, c'est beaucoup plus logique a mon sens et ça économise le serveur d'autre part... Wink


RE: Gestion des ressources - Anthor - 29-07-2009

Tout dépend, un cron peut te servir à vérifier la cohérence des données, ou à calculer un classement, qui'il serait bête de recalculer toute la journée pour l'affichage..
D'autre part il ne faut pas non plus oublier que le CRON permet de s'affranchir d'apache et donc d'utiliser un processus différent. Tu peux donc te permettre d'y faire de très gros calcul sans saturé ton serveur, Apache ne prenant jamais tous le CPU.

C'est a réserver aux grosses requêtes.


RE: Gestion des ressources - v3rsus - 29-07-2009

Je pense donc que je vais en fait faire calculer du côté client les ressources dès qu'il se connecte.
Si il subit une attaque, je vais faire en sorte que ce soit le cron qui gère les attaques qui recalculera les ressources que possède le joueur attaqué.
Qu'en pensez vous?