Générer des actions

9 réponses
AuteurMessage

DarkSquall |
Membre

Photo de DarkSquall

Inscrit le : 27/08/2005

# Le 04/04/2006 à 19:45

Hello,

Voilà, on va dire que j'ai un site d'élevage virtuel. (C'est pas le cas, mais admettons)

Je désire générer un rapport d'actions. Visible dans sa globalité (pour tous les membres) ou d'un seul membre (voir ce qu'il a fait).

Exemple :

16-10-2006 18:12 membre 12 a nourit son chien
16-10-2006 18:13 membre 12 a vendu sa maison à membre 48
16-10-2006 18:14 membre 12 a envoyé un message à membre 666

Voilà, un peu dans ce genre là...

J'avais pensé faire simplement une table, date/membre1/membre2/action
Mais je me demande si ça serait pas un peu juste utile pour faire exploser le serveur sql?
Peut être serait il préférable de générer ça dans un fichier?

Quel est votre avis?
Vous avez un système de ce genre, peut être...


Merci !

Isyweb.comOuvrir dans une nouvelle fenetre

tybozz | Thibaud
Membre

 

Inscrit le : 09/05/2005

# Le 04/04/2006 à 19:49

Oui une DB ... après "suffit" de la purger régulièrement.

Elevez un dragon !Ouvrir dans une nouvelle fenetre avant qu'il ne fasse le casting pour la star on the net academyOuvrir dans une nouvelle fenetre ou qu'il ne s'empiffre de bonbons à gogoOuvrir dans une nouvelle fenetre

bhamp0 | Benjamin
Membre

Photo de bhamp0

Inscrit le : 09/05/2005

# Le 04/04/2006 à 19:49

En poussant un peu plus le concept, tu aurais deux tables :
ACTIONS_DATEES : id/date/membre1/membre2(NULL si nécessaire)/id_action
ACTIONS_GENERIQUES : id/action(UNIQUE)

Ainsi, si l'action existe déjà (nourrir son chien), bah t'as pas à la recréer mais t'indiques simplement quel membre l'a faite ...

Mais bon, c'est pas forcément la bonne solution

Quand on voit c'qu'on voit, et qu'on entend c'qu'on entend, on a raison d'penser c'qu'on pense !

DarkSquall |
Membre

Photo de DarkSquall

Inscrit le : 27/08/2005

# Le 04/04/2006 à 19:54

Merci Tybozz, je vais faire ça en simplicité, alors!

J'avais juste pensé que c'état préférable d'utiliser un autre système du fait que j'utile pas de système de cache et donc sql est fort solicité contrairement à php.

Pas bête bhamp0, je vais sans doute faire qqch dans ce style ou simplement utiliser une table, avec dans mon fichier php un switch avec les actions

Isyweb.comOuvrir dans une nouvelle fenetre

tybozz | Thibaud
Membre

 

Inscrit le : 09/05/2005

# Le 04/04/2006 à 20:52

J'ai une table d'historique sur eud mais avec "peu" de messages : une dizaine par jour / par joueur et je supprime les messages quand ils sont lus ou au bout de 3 jours.

Elevez un dragon !Ouvrir dans une nouvelle fenetre avant qu'il ne fasse le casting pour la star on the net academyOuvrir dans une nouvelle fenetre ou qu'il ne s'empiffre de bonbons à gogoOuvrir dans une nouvelle fenetre

PyRoFlo | Florent
Modérateur

Photo de PyRoFlo

Inscrit le : 09/05/2005

# Le 04/04/2006 à 20:57

Moi aussi j'ai une table de ce genre pour l'historique des points gagnés.

CREATE TABLE `pyro_gains` (
`id_gain` smallint(6) NOT NULL auto_increment,
`id_membre` smallint(6) NOT NULL default '0',
`inscrit` datetime NOT NULL default '0000-00-00 00:00:00',
`type` enum('1','2','3','4','5','6','7','8','9') NOT NULL default '1'
PRIMARY KEY (`id_gain`)
)

Mais vu que j'ai "peu" de trafic...

Feu d'artifice ParisOuvrir dans une nouvelle fenetre

MathieuC | Mathieu
Modérateur

Photo de MathieuC

Inscrit le : 15/07/2005

# Le 04/04/2006 à 21:55

Dans le cas de myefarm, les historiques des joueurs sont les plus grosses tables effectivement. Il faut quand meme savoir que les historiques des joueurs sont TRES riches, ca doit tourner autour de 30/40 lignes / jour et par joueur en moyenne (les historiques sont conserves 3 jours).

Au total, les differentes tables d'historiques prennent 1,5 Go

Avec les tables optimisees (index, etc...) ca ne pose aucun probleme au serveur MySQL, il gere ca sans souci

DarkSquall |
Membre

Photo de DarkSquall

Inscrit le : 27/08/2005

# Le 04/04/2006 à 22:14

Merci à tous !

1,5go Abusé.

Dans mon cas, l'histo fera plus de 100 lignes par jours/joueurs.
Enfin bon.... Dans mon cas, j'aimerais conservé cet historique... Mais je pense que ça ferait trop lourd. Même si j'exporte en txt tous les 3 jours au bout de quelques mois, j'aurais plus de place

J'effacerai au bout de quelques jours aussi, on verra, suivant l'importance de la table...

Encore merci pour vos expériances à ce sujet!

Isyweb.comOuvrir dans une nouvelle fenetre

MathieuC | Mathieu
Modérateur

Photo de MathieuC

Inscrit le : 15/07/2005

# Le 04/04/2006 à 22:37

Ca va dependre de ton nombre de joueurs aussi, sur myefarm ce sont les historique de 550 000 joueurs ;)

DarkSquall |
Membre

Photo de DarkSquall

Inscrit le : 27/08/2005

# Le 04/04/2006 à 22:38

Je (ne pense pas/ne vais pas) atteindre ce chiffre, loin de là...

Isyweb.comOuvrir dans une nouvelle fenetre

Répondre

Vous ne pouvez pas participer au forum, car votre inscription n'a pas été validée. Pour vous faire valider en tant que Membre, cliquez ici.

© MHN - Tous droits réservés | CNIL N°844440 | 24/11/2024 3:44:42 | Généré en 10.61ms | Contacts | Mentions légales |