JeuWeb - Crée ton jeu par navigateur
[PHP] Resque ou Rediska et Redis : je rame complétement... - 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 : [PHP] Resque ou Rediska et Redis : je rame complétement... (/showthread.php?tid=5821)

Pages : 1 2 3 4 5 6 7 8 9


RE: [PHP] Resque ou Rediska et Redis : je rame complétement... - php_addict - 27-11-2011

(27-11-2011, 06:25 PM)Hideaki a écrit : @php_ex_addict : avec cron sans doute cronTab tu peux faire à la seconde près

non non, maximum à la minute près:

$ nano /etc/crontab a écrit :# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly





RE: [PHP] Resque ou Rediska et Redis : je rame complétement... - Sephi-Chan - 27-11-2011

Plus qu'à porter Resque Scheduler ! Smile

C'est pas si compliqué si tu te contentes dans un premier temps de la partie qui permet de programmer des tâches. La partie cron-like est un peu plus difficile (d'ailleurs dans Resque Scheduler c'est en fait Rufus Scheduler qui apporte cette fonctionnalité).

Je peux t'aider si tu te lances. Grâce à mon descriptif donné plus haut, tu as déjà un bon descriptif de ce qui se passe et c'est trivial à implémenter en PHP. Il ne reste plus que la partie pour créer le processus pilote.



RE: [PHP] Resque ou Rediska et Redis : je rame complétement... - Hideaki - 27-11-2011

@Php_addict : ok je te crois, comme spring (framework en java) gère les secondes en déclaration cron, j'espérais la même chose ^^


RE: [PHP] Resque ou Rediska et Redis : je rame complétement... - php_addict - 28-11-2011

(27-11-2011, 09:54 PM)Sephi-Chan a écrit : Plus qu'à porter Resque Scheduler ! Smile

euh oui, mais alors je n'ai absolument aucune idée de comment faire ca...certainement avec les socket non ?

c'est con car le gars qui a coder php-resque aurait pu le faire simplement je pense...


RE: [PHP] Resque ou Rediska et Redis : je rame complétement... - Sephi-Chan - 28-11-2011

Tu n'as pas à gérer cet aspect. Toi tu as juste à parler avec Redis, comme le fait Resque.


RE: [PHP] Resque ou Rediska et Redis : je rame complétement... - atra27 - 28-11-2011

mais enfaite je comprend pas un détail, c'est redis qui gére le scheduling? ou c'est ruby? ou une autre entitée en surcouche?


RE: [PHP] Resque ou Rediska et Redis : je rame complétement... - Sephi-Chan - 28-11-2011

C'est un processus Ruby qui s'occupe du scheduling. Dans la méthode run de classe Resque::Scheduler.




RE: [PHP] Resque ou Rediska et Redis : je rame complétement... - Hideaki - 28-11-2011

La dernière fois php_addict tu parlais de grand jeu même s'il n'est pas si grand, il y a empire univers 2 qui fonctionne toutes les 1 minutes.
Pour dire qu'il y a des jeux populaires avec un rafraîchissement par minute sans que cela pose problème pour le joueur.



RE: [PHP] Resque ou Rediska et Redis : je rame complétement... - atra27 - 28-11-2011

Si c'est un processus ruby qui schelude a l'heure prévue dans redis dans ce cas c'est pas jouable en php.

De plus je met en garde contre ces méthodes: si l'appli ruby est déchargée du serveur a l'heure ou la tache doit étre lancée...
De plus si les workers sont occupés a l'heure prévue, la tache ne s'effectuera pas a l'heure ou elle devrais mais aprés l'heure!


RE: [PHP] Resque ou Rediska et Redis : je rame complétement... - Sephi-Chan - 28-11-2011

(28-11-2011, 05:09 PM)atra27 a écrit : Si c'est un processus ruby qui schelude a l'heure prévue dans redis dans ce cas c'est pas jouable en php.

Bien sûr que si, on peut faire un portage de Resque Scheduler en PHP.
Et d'ailleurs on doit même pouvoir utiliser la version Ruby de Resque Scheduler, vu qu'elle n'a d'interactions qu'avec le serveur Redis.
Tu devrais tester ça, PHP Addict.


(28-11-2011, 05:09 PM)atra27 a écrit : De plus je met en garde contre ces méthodes: si l'appli ruby est déchargée du serveur a l'heure ou la tache doit étre lancée...

Je ne vois pas vraiment le problème… Pourquoi veux-tu que le scheduler ne soit pas lancé ?
Parce que à ce compte là, je peux te dire que si Apache n'est pas lancé, ton site ne fonctionne pas.


(28-11-2011, 05:09 PM)atra27 a écrit : De plus si les workers sont occupés a l'heure prévue, la tache ne s'effectuera pas a l'heure ou elle devrais mais aprés l'heure!

Effectivement, les tâches peuvent avoir un peu de retard si tous les workers sont occupés, mais ça on le sait tous depuis le début.