[MySQL] demande de conseil pour forum [résolu...]

demande de conseil pour forum [résolu...] [MySQL] - SQL/NoSQL - Programmation

Marsh Posté le 14-03-2003 à 22:54:48    

Salut a tous,
 
Je suis en train de faire un forum en php et je suis en galère pour le suivi des sujets (l'équivalent des drapos sur ce forum).
Je sais pas du tout comment je peux faire ma table dans laquelle stoquer les valeurs des dernières réponses lues.
 
Si vous pouviez me donner quelques conseils.
 
Merci d'avance
Benjamin


Message édité par BenJ9002 le 15-03-2003 à 01:05:17
Reply

Marsh Posté le 14-03-2003 à 22:54:48   

Reply

Marsh Posté le 14-03-2003 à 23:17:19    

bah quand tu fais une base de données, tu dois d'abord faire l'inventaire de toutes les informations dont tu as besoin, puis tu normalises, c'est à dire regrouper ces infos rationnellement.
 
Bon, de quoi as-tu besoin pour gérer tes drapeaux?  La voilà la question ;)
 
Euh alors je dirais: l'id de l'utilisateur, l'id du sujet, et la dernière position lue dans le sujet.  J'ai bon?


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 14-03-2003 à 23:30:12    

Ah ouais, merde, j'avais pas vu ca comme ca.... Je pensait une ligne par utilisateur, mais je bloquais sur comment sauver toutes les infos de tous les sujets :/
 
Mais en fait avec ta méthode, tu as pour chaque utilisateur autant d'enregistrement qu'il a vu de question :ouch:  ?

Reply

Marsh Posté le 15-03-2003 à 00:10:27    

et comment veux-tu faire d'autre?  Tout dépend si tu veux conserver longtemps ces informations [:spamafote]
 
Tu dois forcément avoir une ligne associant un utilisateur à un sujet.  Je sais pas si c'est la meilleure méthode qui existe mais c'est la meilleure que j'ai à te proposer.  Pis bon hein, 4 bytes pour l'id du user, 4 bytes pour l'id du topic, et encore 4 pour la date, ça ne fait jamais que 12 par enregistrement.


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 15-03-2003 à 00:17:17    

drasche a écrit :

et comment veux-tu faire d'autre?  


Ben justement, ca fait 3 jours que je cherchais sans résultat ... d'où mon topic [:zoutte]  
 

drasche a écrit :


Tout dépend si tu veux conserver longtemps ces informations [:spamafote]
 
Tu dois forcément avoir une ligne associant un utilisateur à un sujet.  Je sais pas si c'est la meilleure méthode qui existe mais c'est la meilleure que j'ai à te proposer.  Pis bon hein, 4 bytes pour l'id du user, 4 bytes pour l'id du topic, et encore 4 pour la date, ça ne fait jamais que 12 par enregistrement.


Mais c'est clair que ca fait pas une grosse table non plus.
 
En tous cas je te remercie grandement :jap: Je vais enfin pouvoir finir mon forum :whistle:


Message édité par BenJ9002 le 15-03-2003 à 00:18:42
Reply

Marsh Posté le 15-03-2003 à 00:24:15    

bon ben du coup [:drapo]
 :whistle:


---------------
Suri.morkitu.org : Balades au coeur de la ville...
Reply

Marsh Posté le 15-03-2003 à 00:27:28    

Suri a écrit :

bon ben du coup [:drapo]
 :whistle:  


 
Tu c quoi ??? J'ai presque envie de t'aider ;) Tu coince sur quoi ?

Reply

Marsh Posté le 15-03-2003 à 02:28:00    

benj9002 a écrit :


 
Tu c quoi ??? J'ai presque envie de t'aider ;) Tu coince sur quoi ?


 
nulle part pour l'instant :D j'ai pas commencé les goodies... je les ferais une fois que le forum sera fini ds ses grande lignes...


---------------
Suri.morkitu.org : Balades au coeur de la ville...
Reply

Marsh Posté le 16-03-2003 à 00:51:28    

drasche, je te remercie 1000 fois, grace à toi j'ai fini mon forum, et ca marche trop bien !!! c'est un chouia lent mais ca va quand meme (chaque page mets environ 0,15s à se créer au lieu de 0,1s)
Encore merci

Reply

Marsh Posté le 16-03-2003 à 00:56:33    

:jap: :hello:


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 16-03-2003 à 00:56:33   

Reply

Marsh Posté le 16-03-2003 à 09:23:47    

benj9002 a écrit :

drasche, je te remercie 1000 fois, grace à toi j'ai fini mon forum, et ca marche trop bien !!! c'est un chouia lent mais ca va quand meme (chaque page mets environ 0,15s à se créer au lieu de 0,1s)
Encore merci

et avec combien de message dans ta bdd tu as cette vitesse ?

Reply

Marsh Posté le 16-03-2003 à 10:51:50    

pour l'instant y a environ 250 messages pour 5 forums.  
 
Mais je sais que mon forum est pas super bien programmé non plus :sarcastic: ...
 
 
Pourquoi ? Tu trouve ca lent ou rapide comme forum ? (ah aussi, pour l'instant il est sur mon portable cel800 avec un dd 4200tr/min qui est tout sauf une flèche ...)


Message édité par BenJ9002 le 16-03-2003 à 10:53:36
Reply

Marsh Posté le 16-03-2003 à 11:36:54    

benj9002 a écrit :

pour l'instant y a environ 250 messages pour 5 forums.  
 
Mais je sais que mon forum est pas super bien programmé non plus :sarcastic: ...
 
 
Pourquoi ? Tu trouve ca lent ou rapide comme forum ? (ah aussi, pour l'instant il est sur mon portable cel800 avec un dd 4200tr/min qui est tout sauf une flèche ...)


bah prend hfr comme ref... entre 0,03 et 0,09 pour lister la premiere page de topic par ex... donc 0,15 c TREs lent (surtout avec 250msg contre plusieurs millions sur hfr...


---------------
Suri.morkitu.org : Balades au coeur de la ville...
Reply

Marsh Posté le 16-03-2003 à 11:50:38    

Suri a écrit :


bah prend hfr comme ref... entre 0,03 et 0,09 pour lister la premiere page de topic par ex... donc 0,15 c TREs lent (surtout avec 250msg contre plusieurs millions sur hfr...


 
Ouais mais HFR, c'est pas les memes moyens que moi aussi :lol: ... eux c'est un bi Athlon MP 2400+ 512Mo si je me souviens bien en full SCSI (10 000tr/min surement) [:zoutte] ... Et en plus la mise en page des messages se fait coté client en javascript pour HFR [:spamafote] ... enfin bref, c pas le meme calibre non plus :whistle: ... et eux, c'est un serveur dédié, alors que moi, je fait autre chose aussi avec mon ordi. :whistle:  
Mais sinon pour les pages simples, j'ai un temps de génération de 0,02 à 0,03s :D
 
En fait, je voudrais avoir des idées de comparaison avec d'autres forums fait main qui tournent sur des machines relativement modestes :)

Reply

Marsh Posté le 16-03-2003 à 11:51:20    

remarque.. moi je suis pas loin :D
mais c super variable... je suis entre 0,7 et 0,05 pour une page de topic...  c bizarre qd meme c du a koi?


---------------
Suri.morkitu.org : Balades au coeur de la ville...
Reply

Marsh Posté le 16-03-2003 à 11:58:23    

Je viens de faire des tests, si je suis pas loggué (donc en anonyme) ca met 0,05s à afficher la page en moyenne. Par contre si je suis loggué ca mets 0,1 à 0,15s selon le nombre de messages sur la page :)
 
C'est tout simplement du aux nombre d'acces à la base de données. Mais pour la meme page aussi, des fois ca varie du simple au double entre 2 appels ... surement un pb du à l'occupation du proc à ce moment la [:spamafote]  
 
En tous cas, mon forum marche, c'est l'essentiel :)

Reply

Marsh Posté le 16-03-2003 à 12:51:54    

juste comme ca, tu as une gestion des smileys et autre ubb code?
c ca qui me plombe tout moi
 
corrected :D
un select a chaque fois pour recuperer les smileys  :pfff:


Message édité par Suri le 16-03-2003 à 13:02:57

---------------
Suri.morkitu.org : Balades au coeur de la ville...
Reply

Marsh Posté le 16-03-2003 à 13:34:55    

benj9002 a écrit :

pour l'instant y a environ 250 messages pour 5 forums.  
 
Mais je sais que mon forum est pas super bien programmé non plus :sarcastic: ...
 
 
Pourquoi ? Tu trouve ca lent ou rapide comme forum ? (ah aussi, pour l'instant il est sur mon portable cel800 avec un dd 4200tr/min qui est tout sauf une flèche ...)

ben long :D
je suis en train de faire un forum,et je l'ai tester avec 200 000 sujets et 1 millions de reponse.Il met entre 0.03 et 0.01 secondes par page :D
mais pour le moment il a pas trop d'option,mais en general c les requetes qui prenne le plus de temps surtout avec des millions de messages.
et puis pour les smiley faut pas les stocker dans la bdd !
dans ton fichier php,tu met les smiley par defaut dans ta page avec str_replace et les autres tu utilise regex pour remplacer [:smiley] par <img src="smiley.gif">
 
mais regex c assez compliqué :D


Message édité par forummp3 le 16-03-2003 à 13:35:55
Reply

Marsh Posté le 16-03-2003 à 13:38:38    

benj9002 a écrit :


 
Ouais mais HFR, c'est pas les memes moyens que moi aussi :lol: ... eux c'est un bi Athlon MP 2400+ 512Mo si je me souviens bien en full SCSI (10 000tr/min surement) [:zoutte] ... Et en plus la mise en page des messages se fait coté client en javascript pour HFR [:spamafote] ... enfin bref, c pas le meme calibre non plus :whistle: ... et eux, c'est un serveur dédié, alors que moi, je fait autre chose aussi avec mon ordi. :whistle:  
Mais sinon pour les pages simples, j'ai un temps de génération de 0,02 à 0,03s :D
 
En fait, je voudrais avoir des idées de comparaison avec d'autres forums fait main qui tournent sur des machines relativement modestes :)


 
Si tu utilisais des CSS pour tout ce qui est mise en page, tu n'aurais absolument pas besoin de générer quoi que ce soit du côté serveur pour cela. (Ou plutôt si, la feuille de style, mais une fois pour toutes)... :/
 

Reply

Marsh Posté le 16-03-2003 à 13:40:02    

forummp3 a écrit :


et puis pour les smiley faut pas les stocker dans la bdd !
dans ton fichier php,tu met les smiley par defaut dans ta page avec str_replace et les autres tu utilise regex pour remplacer [:smiley] par <img src="smiley.gif">
 
mais regex c assez compliqué :D


 
oui c ce que je viens de faire :d un fichier de smiley... mais c un fichier generé par l'admin donc les smileys sont forcement ds une table.. mais bon j'avais fait une grosse connerie qd meme :D


---------------
Suri.morkitu.org : Balades au coeur de la ville...
Reply

Marsh Posté le 16-03-2003 à 14:13:50    

Hermes le Messager a écrit :


 
Si tu utilisais des CSS pour tout ce qui est mise en page, tu n'aurais absolument pas besoin de générer quoi que ce soit du côté serveur pour cela. (Ou plutôt si, la feuille de style, mais une fois pour toutes)... :/
 
 


 :??: justement j'utilise une feuille de style :??:  
 
mais par contre je fais mon tableau qui affiche les messages coté serveur.

Reply

Marsh Posté le 16-03-2003 à 14:16:39    

benj9002 a écrit :


 :??: justement j'utilise une feuille de style :??:  
 
mais par contre je fais mon tableau qui affiche les messages coté serveur.


 
Si tu utilises SEULEMENT la feuille de style pour le graphisme, tu allèges considérablement la charge pour le serveur. De plus, pour le client, le chargement est également BCP plus rapide, puisque la feuille de style externe reste dans le cache. ;)
 

Reply

Marsh Posté le 16-03-2003 à 14:17:34    

forummp3 a écrit :

ben long :D
je suis en train de faire un forum,et je l'ai tester avec 200 000 sujets et 1 millions de reponse.Il met entre 0.03 et 0.01 secondes par page :D


Mais c'est quoi ta config ?
 

forummp3 a écrit :


mais pour le moment il a pas trop d'option,mais en general c les requetes qui prenne le plus de temps surtout avec des millions de messages.
et puis pour les smiley faut pas les stocker dans la bdd !
dans ton fichier php,tu met les smiley par defaut dans ta page avec str_replace et les autres tu utilise regex pour remplacer [:smiley] par <img src="smiley.gif">
 
mais regex c assez compliqué :D


regex ca marche un peu comme preg_replace ?  
pasque ca c'est trop de la balle, je l'ai découvert jeudi, depuis, je peu plus m'en passer :D

Reply

Marsh Posté le 16-03-2003 à 14:20:13    

Hermes le Messager a écrit :


 
Si tu utilises SEULEMENT la feuille de style pour le graphisme, tu allèges considérablement la charge pour le serveur. De plus, pour le client, le chargement est également BCP plus rapide, puisque la feuille de style externe reste dans le cache. ;)
 


 
Je comprends pas du tout ce que tu veux dire :??: ... peut etre que c'est du a la fatigue, mais j'ai un peu de mal :D  
 
Peut etre aussi que je programme pas tres proprement mon code html aussi :whistle: c'est pour ca que c'est lent

Reply

Marsh Posté le 16-03-2003 à 14:20:55    

benj9002 a écrit :


Mais c'est quoi ta config ?
 
 
regex ca marche un peu comme preg_replace ?  
pasque ca c'est trop de la balle, je l'ai découvert jeudi, depuis, je peu plus m'en passer :D


j'ai tester sur un ordi puissant quand meme :D
pentium 2ghz mais ya seti qui tourne donc le processeur est ralenti.
 
regex (regular expression) c'est bien les preg_replace ;)

Reply

Marsh Posté le 16-03-2003 à 14:22:36    

benj9002 a écrit :


Mais c'est quoi ta config ?
 
 
regex ca marche un peu comme preg_replace ?  
pasque ca c'est trop de la balle, je l'ai découvert jeudi, depuis, je peu plus m'en passer :D


 
Les regexp sont bcp bcp plus lentes que les str_replace.
 
Sinon, pour le reste je suis d'accord avec toi. Dans le forum que je suis en train de faire, les smileys persos des membres seront stokés sur un fichier externe qui portera l'ID du membre comme nom, et dedant seront mis les smileys persos du membre. Cette page sera alors directement incluse dans la page répondre. Seule la connaissance de l'ID du membre sera donc nécessaire.

Reply

Marsh Posté le 16-03-2003 à 14:27:41    

Hermes le Messager a écrit :


 
Les regexp sont bcp bcp plus lentes que les str_replace.
 
Sinon, pour le reste je suis d'accord avec toi. Dans le forum que je suis en train de faire, les smileys persos des membres seront stokés sur un fichier externe qui portera l'ID du membre comme nom, et dedant seront mis les smileys persos du membre. Cette page sera alors directement incluse dans la page répondre. Seule la connaissance de l'ID du membre sera donc nécessaire.

prkoi se compliquer la vie avec les fichier?tu remplace le code du smiley par l'adresse du smiley.

Reply

Marsh Posté le 16-03-2003 à 14:29:36    

forummp3 a écrit :

prkoi se compliquer la vie avec les fichier?tu remplace le code du smiley par l'adresse du smiley.


 
Tu n'as pas lu correctement mon message. Je te parle d'une liste de smileys persos PROPRES à CHAQUE MEMBRE.  :whistle:

Reply

Marsh Posté le 16-03-2003 à 14:30:30    

Hermes le Messager a écrit :


 
Tu n'as pas lu correctement mon message. Je te parle d'une liste de smileys persos PROPRES à CHAQUE MEMBRE.  :whistle:  

ca veux dire que un membre peu avoir plusieurs smiley perso?

Reply

Marsh Posté le 16-03-2003 à 14:30:52    

forummp3 a écrit :

prkoi se compliquer la vie avec les fichier?tu remplace le code du smiley par l'adresse du smiley.


 
Je pense qu'il voulais parler de la liste des smileys que le membre à en acces direct. Pas seulement de son smiley perso qui lui porte le nom du membre.gif :)
 
Edit : Grillé :D


Message édité par BenJ9002 le 16-03-2003 à 14:31:15
Reply

Marsh Posté le 16-03-2003 à 14:31:52    

forummp3 a écrit :

ca veux dire que un membre peu avoir plusieurs smiley perso?


 
Non tu peux avoir acces direct aux smileys d'autres membres

Reply

Marsh Posté le 16-03-2003 à 14:32:41    

benj9002 a écrit :


 
Je pense qu'il voulais parler de la liste des smileys que le membre à en acces direct. Pas seulement de son smiley perso qui lui porte le nom du membre.gif :)
 
Edit : Grillé :D

he oui grilled :D
 
p'tete qu'il parle aussi de la liste des smiley perso des autres que l'on aura sur l'interface d'admin pour cliquer dessus.

Reply

Marsh Posté le 16-03-2003 à 14:34:37    

Hermes le Messager a écrit :


 
Si tu utilises SEULEMENT la feuille de style pour le graphisme, tu allèges considérablement la charge pour le serveur. De plus, pour le client, le chargement est également BCP plus rapide, puisque la feuille de style externe reste dans le cache. ;)
 


 
:) Ca m'explique pas ce que tu voulais dire par là :lol:

Reply

Marsh Posté le 16-03-2003 à 14:45:03    

benj9002 a écrit :

drasche, je te remercie 1000 fois, grace à toi j'ai fini mon forum, et ca marche trop bien !!! c'est un chouia lent mais ca va quand meme (chaque page mets environ 0,15s à se créer au lieu de 0,1s)


La différence est énorme, ce n'est pas normal. Vérifie la manière dont tu effectues ta jointure et surtout les index relatifs à tes tables. Un index compound membre/sujet sur ta table drapeau te permettrait déjà de gagner en perf.

Reply

Marsh Posté le 16-03-2003 à 14:53:59    

Core 666 a écrit :


La différence est énorme, ce n'est pas normal. Vérifie la manière dont tu effectues ta jointure et surtout les index relatifs à tes tables. Un index compound membre/sujet sur ta table drapeau te permettrait déjà de gagner en perf.


 
Euh, déja c'est quoi la jointure :??: Et un index compound :??:
 
Mais sinon, je pense que les ralentissement viennent du fait que j'utilise qu'une table pour tous les messages : je stocke les questions et les réponses dans la meme table. Mais je changerais ca dasn la prochaine version de mon forum :)

Reply

Marsh Posté le 16-03-2003 à 14:55:45    

benj9002 a écrit :


 
:) Ca m'explique pas ce que tu voulais dire par là :lol:


 
Regarde ici :  
 
 
http://tousleschats.free.fr/hermes/forum/index.html
http://tousleschats.free.fr/hermes/forum/sujets.html
http://tousleschats.free.fr/hermes [...] dages.html
http://tousleschats.free.fr/hermes/forum/messages.html
http://tousleschats.free.fr/hermes/forum/sondages.html  
http://tousleschats.free.fr/hermes/forum/repondre.html  
 
et fait un click droit, ce sera plus "parlant".
 
Ce sont des préwiews de ce à quoi ressemblera mon forum. Regardes bien le code : Aucune spéc. concernant le graphisme n'est présente dans le code HTML. ABSOLUMENT TOUTE la mise en forme est contenue dans une feuille de style externe, ce qui fait qu'on pourra changer une fois pour toutes, toutes les caractéristiques graphiques sans toucher une ligne de code. Et bien sûr, toutes ces caractéristiques seront autant de choses en moins à générer.

Reply

Marsh Posté le 16-03-2003 à 14:56:36    

Hermes le Messager a écrit :


 
Les regexp sont bcp bcp plus lentes que les str_replace.


 
ouais mais la casse des smileys tu geres comment ca apres ? :/


---------------
Suri.morkitu.org : Balades au coeur de la ville...
Reply

Marsh Posté le 16-03-2003 à 14:56:47    

benj9002 a écrit :


 
Euh, déja c'est quoi la jointure :??: Et un index compound :??:


http://www.mysql.com/doc/en/JOIN.html
http://www.mysql.com/doc/en/MySQL_indexes.html
 

Citation :

Mais sinon, je pense que les ralentissement viennent du fait que j'utilise qu'une table pour tous les messages : je stocke les questions et les réponses dans la meme table.


Beurps, j'ai vomi :p

Reply

Marsh Posté le 16-03-2003 à 15:02:39    

Suri a écrit :


 
ouais mais la casse des smileys tu geres comment ca apres ? :/


 
Ben bêtement en considérant qu'on doit remplacer " smiley " par l'image correspondante. (Remarque bien les espaces). exemple : " :) ".


Message édité par Hermes le Messager le 16-03-2003 à 15:03:02
Reply

Marsh Posté le 16-03-2003 à 15:05:40    

Hermes le Messager a écrit :


 
Ben bêtement en considérant qu'on doit remplacer " smiley " par l'image correspondante. (Remarque bien les espaces). exemple : " :) ".

euh ce que je voulais dire c pour gerer par exemple  
": d" et ": D" .. avec une regexp tu matches avec /i mais pour str_replace?


---------------
Suri.morkitu.org : Balades au coeur de la ville...
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed