Publié le 22/04/2005 Dans Interviews
Et le technique dans tout cela?
2.1 Quel serveur héberge Gamerz.be?GamerZ.be est actuellement hosté sur deux serveurs dédiés connectés à 100Mbps sur internet.
Le premier est un serveur fait maison, Athlon XP 1800+ avec 512Mb RAM DDR et 2x40Gb IDE.
Le second est un SuperMicro Dual Xeon 2,667 avec 1G de RAM ECC et 2x 36Gb SCSI3.
Le prochain site sera hébergé sur trois serveurs, deux P4 2,5 venant remplacer le vénérable Athlon XP.
La structure est une structure assez courante avec deux front ends web et un back end SQL.
Tout tourne sous Linux Debian, et si vous vous demandez "pourquoi Debian" : c'est que vous ne l'avez jamais installé =) .
2.2 Que représente l'audience de Gamerz.be?
GamerZ.be est le site de Gaming numéro un en Belgique francophone, avec 3 Millions de pages vues mensuelles et des pointes à 5 Millions. Comme vous pourrez le constater, GamerZ n'est finalement qu'un très gros forum. GamerZ.be est le plus gros forum de Belgique, tous sites et langues confondus, avec plus de 2 millions de messages postés accessibles. Il est également parmi les plus gros forums basés sur PHPBB au monde.
2.3 Un forum phpBB comme actuellement n'est-il pas un choix un petit peu audacieux pour un site aussi visité ?
Avant tout, nous n'avions pas imaginé une telle audience au lancement du site.
Ensuite, il faut tuer ces préjugés. Bien sûr tout le monde pointe le doigt sur IPB comme étant un super board professionnel par exemple. Mais faisons un reality check. Les dix plus gros forums au monde sont tous des forums écrits de A à Z pour la circonstance. Ca devrait déjà donner la puce à l'oreille.
Les plus gros forums francophones sont sur le service ASP "MesDiscussions" (Hardware.fr, etc) qu'on peut considérer comme écrit pour la circonstance également. Ensuite, le plus gros board du monde "non custom" est un forum PHPBB... Suivi d'une dizaine d'autres PHPBBs !
Evidemment, ces boards monstrueux ( 22M messages, 4500 simultanés, etc) n'ont plus rien à voir avec le code original. Mais c'est la puissance de PHPBB : le code est compréhensible et modifiable aisément.
Ce qui tue les performances de tous les "gros" systèmes de forum c'est qu'ils sont pensés pour un administrateur de forum "débutant". Quelq'un qui appréciera les systèmes de templates, les 40 millards d'options, etc. L'impact performance est loin d'être négligeable entre un board léger qui a été modifié pour incorporer quelque chose "comme un grand" (un phpbb custom) et un board commercial bien lourd qui fait 23 queries SQL pour savoir si l'user à bien le droit de poster dans tel ou tel forum.
PHPBB est une excellente base de travail. Mais il est évident que je vous invite à bourrer 2M de messages (une database de 1,6Gb) dans un PHPBB non modifié pour savourer le travail fait ici.
2.4 Comment faites-vous pour tenir une telle charge? Un secret?
Oui, il y a un secret ! (je vous invite à relire la définition de secret)
Plus sérieusement, j'ai surtout du effectuer des coupes franches dans le code, revoir certaines queries SQL, simplifier le forum au possible, à vrai dire quelque chose change dans le code toutes les semaines.
Pour moi, le secret de GamerZ et de beaucoup de gros boards réside clairement dans le back end SQL.
2.5 Le code n'est actuellement pas conforme aux normes, est-ce prévu dans un futur proche ou lointain?
Oui et non. Le prochaine version du site sera je l'espère xhtml 1.0 transitional. Maintenant je vous invite a vérifier la compliance xhtml d'un grand site, www.skynet.be par exemple, pour une partie de franche rigolade.
Donc oui : un effort sera fait dans ce sens, mais NON, je ne souhaite pas rentrer dans l'inutile défi technologique d'avoir un site ou toutes les pages sont "compliantes xhtml1.1" juste pour pouvoir dire à la face du monde "je suis un nerd" !
Et encore moins faire un des ses innombrables sites ou seule la front page est compliant (avec un referrer check fièrement affiché) et ou tout le reste est non compliant.
Bref le code c'est la cerise sur la gâteau, le "nice to have" pour quand je n'aurais vraiment plus que cela à faire...