La puissance ??? [ FORUM HFR ] - Programmation
Marsh Posté le 24-01-2002 à 12:47:12
je pense qu'ils utilisent un système de cache : les pages ne sont pas regénérées à chaque fois, uniquement lorsqu'il y a eu un nouveau message dans le topic ci présent par exemple.
Marsh Posté le 24-01-2002 à 12:48:18
enfin, je suis pas sûr, mais sinon,
1. les machines sont des bêtes de course (octo Xeon 1Go RAM)
2. les scripts sont méchamment bien opitmisés
Marsh Posté le 24-01-2002 à 13:04:08
__Lolo__ a écrit a écrit : y a pas lgtps ct un bi pIII 500 je crois |
Heu çà, c'est pour le site www.hardware.fr
http://www.hardware.fr/html/a_propos/
Le forum il est pas sur la même machine !
Marsh Posté le 24-01-2002 à 13:07:46
z0rglub a écrit a écrit : je pense qu'ils utilisent un système de cache : les pages ne sont pas regénérées à chaque fois, uniquement lorsqu'il y a eu un nouveau message dans le topic ci présent par exemple. |
Un systeme de cache, j'y crois pas trop, vu le nombre de messages postés, cela bouge tout le temps... Enfin je me trompe peut-être, mais même lorsque tu parcours le Forum sur des pages autres que la page 1, cela repond très vite...
Je veux bien croire que le code est bien pondu, mais c'est surtout côté MySQL que j'ai des intérrogations (presque 4 Millions de messages !!!).
Arff...
Marsh Posté le 24-01-2002 à 13:09:47
Pour le cache, va voir ton profil :
"Système de mise en cache HTML"
Marsh Posté le 24-01-2002 à 13:11:43
Pour les tables de recherche, pour BlaBla, c'est plus de 9 000 000 de lignes
http://forum.hardware.fr/forum2.ph [...] me=&trash=
Regarde les messages de joce !
Marsh Posté le 24-01-2002 à 13:15:15
C'est beau PhpSysInfo en Template:aq, Language:fr !
Mais le uptime : 5 days 12 hours 39 minutes, bof !
Marsh Posté le 24-01-2002 à 13:28:01
Mara's dad a écrit a écrit : Pour le cache, va voir ton profil : "Système de mise en cache HTML" |
Ca pas de rapport avec MySQL... C'est juste une fonction js formatte les données au lieu de PHP...
Marsh Posté le 24-01-2002 à 13:39:25
Là je comprends pas :
Réseau
Code :
|
Comment y fait pour recevoir plus (1.33Go) qu'il ne reçoit (244Mo) ?
Je croyais que c'était un SERVEUR !
Marsh Posté le 24-01-2002 à 13:42:25
Lol, oui mais à chaque clic tu envois une requette, à chaque fois que qq un poste un message ça envois un formulaire... Bref ça fait du data tout ça ! En comparaison afficher du HTML c tout ptiti ptiti !
Marsh Posté le 24-01-2002 à 13:42:58
Mara's dad a écrit a écrit : Comment y fait pour recevoir plus (1.33Go) qu'il ne reçoit (244Mo) ? Je croyais que c'était un SERVEUR ! |
Y'a joce qui telecharge des films !
[edtdd]--Message édité par kadreg--[/edtdd]
Marsh Posté le 24-01-2002 à 13:43:21
kadreg a écrit a écrit : Y'a joce qui telecharge des films ! |
Marsh Posté le 24-01-2002 à 13:46:30
Bruce a écrit a écrit : Lol, oui mais à chaque clic tu envois une requette, à chaque fois que qq un poste un message ça envois un formulaire... Bref ça fait du data tout ça ! En comparaison afficher du HTML c tout ptiti ptiti ! |
Ca ne me semble pas être la raison. Le serveur renvoie forcement plus de données qu'il en reçoie.
Marsh Posté le 24-01-2002 à 13:47:41
fly LM a écrit a écrit : Ca pas de rapport avec MySQL... C'est juste une fonction js formatte les données au lieu de PHP... |
Ben si, le système de mise en cache permet de limiter les requêtes Mysql au strict minimum, et aussi bien sur le trafic HTTP.
bruce LM a écrit a écrit : Lol, oui mais à chaque clic tu envois une requette, à chaque fois que qq un poste un message ça envois un formulaire... Bref ça fait du data tout ça ! En comparaison afficher du HTML c tout ptiti ptiti ! |
Désolé, mais quand tu post un message de 300 caractères, c'est pas gros. En revanche, envoyer le HTML de 30 posts de 300 caractères, c'est déjà plus balèze !
Marsh Posté le 24-01-2002 à 13:52:09
Mara's dad a écrit a écrit : Désolé, mais quand tu post un message de 300 caractères, c'est pas gros. En revanche, envoyer le HTML de 30 posts de 300 caractères, c'est déjà plus balèze ! |
Pour le traffic OUI, pour MySQL faut que tu m'expliques car là je vois pas le rapport, il faut de toute manière chercher toutes les infos, que ce soit PHP qui le format ou ton naviguateur avec JS !!!
Marsh Posté le 24-01-2002 à 14:01:55
Heu, g revé, ou la MYSQl pese plus de 6 Go ???
Marsh Posté le 24-01-2002 à 14:03:56
Max Evans a écrit a écrit : Heu, g revé, ou la MYSQl pese plus de 6 Go ??? |
Tu as révé
/home/mysql est sur une partition de 6.95Go, dont 3.38 Go sont occupés. A priori, ça doit être les bases
Marsh Posté le 24-01-2002 à 14:07:33
Ha OK, c juste la partition !
Mais donc, la base fais kand meme pres de 3.5 Go ?
Marsh Posté le 24-01-2002 à 14:09:20
skylight a écrit a écrit : http://forum.hardware.fr/info/ |
Il y a ça aussi :
http://forum.hardware.fr/mrtg/
Marsh Posté le 24-01-2002 à 14:14:43
kadreg a écrit a écrit : Il y a ça aussi : http://forum.hardware.fr/mrtg/ |
Heu, c koi le login et mdp ?
Marsh Posté le 24-01-2002 à 14:16:01
ReplyMarsh Posté le 24-01-2002 à 14:16:07
fly LM a écrit a écrit : Pour le traffic OUI, pour MySQL faut que tu m'expliques car là je vois pas le rapport, il faut de toute manière chercher toutes les infos, que ce soit PHP qui le format ou ton naviguateur avec JS !!! |
Sauf si tu fait un requête qui demande les posts postérieur à un certain N°, les autres étant dans le cache Javascript du navigateur.
Marsh Posté le 24-01-2002 à 14:20:11
Mara's dad a écrit a écrit : Sauf si tu fait un requête qui demande les posts postérieur à un certain N°, les autres étant dans le cache Javascript du navigateur. |
Marsh Posté le 24-01-2002 à 14:53:06
Mara's dad a écrit a écrit : Sauf si tu fait un requête qui demande les posts postérieur à un certain N°, les autres étant dans le cache Javascript du navigateur. |
te rends-tu compte que c'est impossible? comment php pourrait-il savoir quels sont les posts qui ont changé sans faire une recherche sur tous les premier posts?...
Marsh Posté le 24-01-2002 à 15:02:36
Ben, non, c'est pas impossible !
Je sais pas si c'est fait, mais on peut par exemple mettre un N° de version sur les posts, ou une date de modif !
Ensuite, quand tu redemande une page, ben avec le cookies, le script php sait ou tu en est et te renvoie juste les différences, ou la page complète si y'a trop de modifs.
Marsh Posté le 24-01-2002 à 15:19:43
et comment tu fais pour comparer les numéros de versions, si ce n'est avec une requete?...
Marsh Posté le 24-01-2002 à 15:25:46
peut etre pas les requette mais le transfert de donné, il me semblait avoir lur un truc sur le js dans un chat, ne pas retransferer toute les ligne mais seulement la derniere je vais voir...
Marsh Posté le 24-01-2002 à 15:29:19
kayasax a écrit a écrit : alors c'est quoi le compte pour voir les graphs ? |
bon sinon j'ai retrouvé l'article:
http://www.phpbuilder.com/columns/luis20000724.php3
Citation : One of the things that all programmers love is to write a program which writes another program. On the web we have two different programming environments: the client (browser) and the server. Due to the HTTP protocol definition we can write a program on the server which writes another program to be executed on the client. Let's pick PHP (of course) for the server and JavaScript for the client. We'll show you in this article how you can use this scheme to store data in the client and then minimize the data transfered between the server and the browser for interactive applications like a chat room, a news system or whatever you want. |
Marsh Posté le 24-01-2002 à 15:31:59
ben oui, mais ca c'est le principe du forum de potiron, mais ce diminue absolument pas les requetes, c'est juste la mise en form qui est faite sur le client.
Marsh Posté le 24-01-2002 à 15:35:26
gizmo a écrit a écrit : ben oui, mais ca c'est le principe du forum de potiron, mais ce diminue absolument pas les requetes, c'est juste la mise en form qui est faite sur le client. |
Qu'est ce que tu appelle DIMINUER les requêtes ?
Diminuer leurs nombre ?
Diminuer leurs complexité ?
Diminuer le nombre d'enreg retournés ?
Autre . . . ?
Marsh Posté le 24-01-2002 à 15:37:03
l'idée n'est pas de reduire le temps d'execution d'une requette mais le temps de transfert entre le serveur et le client, on est passé d'un model ou l'interactivité se situait chez le client (javascript) a un modele ou le traitement se faisait coté serveur (php,asp), l'idée est d'utilisé le point fort de chacun pour "balancer", c'est le terme qui convient la charge et le temps de transfert...
en optimisant les requette tu gagne des millieme de seconde, en optimisant les transfert tu gangne des centieme voir des millieme de seconde, plus interessant non?
envoyer une ligne de code * 500 octet est plus rapide qu'envoyer 50* 500 octet , vu qu'on a deja les 49 lignes d'avant
Marsh Posté le 24-01-2002 à 15:39:11
Mara's dad a écrit a écrit : Qu'est ce que tu appelle DIMINUER les requêtes ? Diminuer leurs nombre ? Diminuer leurs complexité ? Diminuer le nombre d'enreg retournés ? Autre . . . ? |
la totale
Marsh Posté le 24-01-2002 à 15:46:31
Bon on fait un exemple :
Dans ma table POSTS, j'ai (En plus du message lui même...)
Topic 123 Post 1 Version 1
Topic 123 Post 2 Version 2
Topic 123 Post 3 Version 3
Topic 123 Post 4 Version 4
Topic 123 Post 5 Version 5
Je demande le topic 123 sans autres précisions : Le serveur renvoie 5 lignes
J'ai donc en local tous les posts jusqu'au 5, version 5.
Quelqu'un post un nouveau message, j'ai donc :
Topic 123 Post 1 Version 1
Topic 123 Post 2 Version 2
Topic 123 Post 3 Version 3
Topic 123 Post 4 Version 4
Topic 123 Post 5 Version 5
Topic 123 Post 6 Version 6
Je demande le topic 123 en précisant version 5 : Le serveur renvoie 1 ligne (Post 6)
Quelqu'un modifie le Post 2, qui devient donc Post 2 version 7.
Puis quelqu'un post un nouveau message, j'ai donc :
Topic 123 Post 1 Version 1
Topic 123 Post 2 Version 7
Topic 123 Post 3 Version 3
Topic 123 Post 4 Version 4
Topic 123 Post 5 Version 5
Topic 123 Post 6 Version 6
Topic 123 Post 7 Version 8
Je demande le topic 123 en précisant version 6 : Le serveur renvoie 2 ligne (Post 2 version 7)+(Post 7 Version 8)
Comment :
Select * from POSTS where Topic=123 AND Version >= 6 ORDER by Post
Bon c'est juste un exemple. Le mot version est peut-être mal adapté.
Vous en pensez quoi ?
Marsh Posté le 24-01-2002 à 11:56:51
Je me pose quelques petites questions sur ce Forum, il y a près de 4 Millions de messages enregistrés... Ouaouh, même s'ils sont stockés sur des tables correspondantes à chaque groupe de discussions (HARDWARE, BLABLA etc...), cela répond super rapidement quelque soit la page interrogée.
Je demande bien qu'elle est le type de machine qui fait fonctionner ce forum et si effectivement les 3.8 Millions de messages sont stockés...
Merci.