L'Agence Mac Media est une entreprise de marketing digital, de design web et de gestion de réseaux sociaux.
J'ai intégré l'équipe en Octobre 2016 en temps qu'Intégrateur Web. Dans ce temps là, les sites web étaient hébergés
sur des forfaits d'hébergement partagé et la stabilité variable des serveurs rendait la production de sites web
très difficile. Les délais de livraison étaient très longs et une fois les sites web complétés, nous recevions
beaucoup de plaintes de clients disant que leur site web est lent.
J'ai fait beaucoup de recherches afin de trouver un hébergeur qui saurait répondre à nos besoins, qui pourrait
supporter notre liste grandissante de sites web et qui nous permettrait de travailler plus efficacement.
Après plusieurs mois, plusieurs compagnies d'hébergement et beaucoup de tentatives sans succès, j'ai décidé de
constuire ma propre infrastructure d'hébergement web. Toujours au nom de L'Agence Mac Media, j'ai créé un département
d'hébergement et monté une infrastructure de serveurs sur mesure nous permettant de supporter la charge de travail du
département web. J'ai également refait tout le réseau interne au bureau pour relier le datacentre à nos serveurs de
stockage locaux, notre système de téléphonie IP, tous les systèmes de sécurité derière un pare-feu et beaucoup, beaucoup
de câbles réseau Ethernet.
Le service d'hébergement web ne cèsse de grossir et compte à ce jour plusieurs centaines de sites web hébergés. L'infrastructure
commence à migrer vers le virtuel, où tout le matériel physique est en redondance afin de complètement éliminer le risque
de panne de matériel. Mon infrastructure d'hébergement est toujours à l'écoute des dernières technologies et
s'améliore de jour en jour pour offrir un service dont la rapidité est exceptionnelle et la sécurité est au plus haut niveau.
Voici mon démoreel, une vidéo de quelques minutes résumant quelques projets.
J'ai construit un système de gestion d'informations pour un jeu de rôle dans le moteur Unity3D 5.3.
Mon outil peut gérer les items du jeu, les quêtes, les différents personnages, etc.
Les données sont encodées en binaire pour rendre les informations sécuritaires.
En jeu, j'ai utilisé ces données pour mettre en place un système d'inventaire complet :
Sac d'objets pour le joueur, système pour équiper des pièces d'armure ou des armes et la possibilité de recevoir un item comme récompense d'une quête.
Mon système de quêtes peut créer et gèrer un nombre illimité de différents types d'objectifs. Par exemple, une quête peut avoir comme objectifs de tuer
8 gobelins, trouver 4 roches magiques, donner un bâton au Grand Mage de "Eitenwoult" et aller parler à Kharkoekk dans sa grotte...
La malléabilité du système rend les possibilités infinies!
Voici un projet qui a été très demandant pendant un lapse de temps très court, mais durant lequel je me suis amusé comme un fou!
J'ai eu le mandat d'héberger un site web e-commerce en préparation au lancement officiel lors d’un passage
à une émission à très grande cote d'écoute. Mon mandat était de prévoir 500 utilisateurs simultanés arrivant sur le
site web d'un coup, et de supporter encore plus d’utilisateurs pour les heures suivant la diffusion de l'émission.
Étant donné qu'il s'agissait d'un site web transactionnel, il n'était pas question qu'il soit hors-ligne une seule seconde.
J'ai commencé par monter un environnement test pour simuler un trafic de 1000 utilisateurs intensifs sur une page web.
Au départ, je penchais vers une configuration de style Load Balancing (ou Balancement de Charge) adaptatif,
ajoutant des petites instances virtuelles au lot de ressources disponible pour le site, selon le trafic reçu.
Mon approche a changé suite à la découverte de deux problèmes liés au site web et à la façon dont il a été monté.
Le premier problème étant que le lancement d'instances automatique n'arrivait pas à déployer des instances assez rapidement avant que le système soit surchargé.
Dès le début, j'ai essayé plusieurs configurations avec des instances plus ou moins grosses mais ce n'était pas assez rapide à mon goût.
Le deuxième problème que j’ai découvert fût que le e-commerce était monté sur la plateforme WooCommerce de WordPress. L'utilisation d'un cluster de serveurs SQL
est assez pointilleuse à configurer et ce n'est définitivement pas facile d'ajouter des instances lorsque le tout est en production et que des commandes sont passées à
chaque minute. En partant, je n'utilisait qu'un seul serveur SQL pour traiter les requêtes de tous les serveurs web, sauf que ce pauvre serveur SQL avait beaucoup de misère.
Je me suis rendu compte, principalement parce que le lancement était dû le lendemain soir et que je n'avais pas une semaine à mettre là dessus,
qu'il ne valait pas la peine de continuer dans cette direction.
J'ai donc opté pour un seul serveur capable de recevoir tout le trafic, tout en restant stable et garantissant qu'aucune commande n'allait être perdue.
Par contre, toujours en faisant des stress test à 1000 utilisateurs, j'ai eu besoin de BEAUCOUP de ressources. Évidemment, la configuration du serveur web
et du serveur SQL a été optimisée au maximum pour éviter un Bottle-Neck à ce niveau.
J'ai fini par déployer le plus gros monstre de ma vie. Rien de moins que 96 coeurs de CPU, 384 Go de mémoire vive et une carte réseau de 25 Go/s.
Rien de moins. Le tout pour faire tourner une seule instance virtuelle sur laquelle tourne Nginx et MariaDB. Inutile de dire que mon test à 1000 utilisateurs
s'est passé sans problème, j'étais confiant que le site était prêt pour son lancement et son passage à la télévision.
Et en effet, en passant la soirée devant mes moniteurs avec un gros sourire au visage, le site était parfaitement stable et hyper rapide, et ainsi, le client hyper content!
Use this area of the page to describe your project. The icon above is part of a free icon set by Flat Icons. On their website, you can download their free set with 16 icons, or you can purchase the entire set with 146 icons for only $12!
Use this area of the page to describe your project. The icon above is part of a free icon set by Flat Icons. On their website, you can download their free set with 16 icons, or you can purchase the entire set with 146 icons for only $12!
Use this area of the page to describe your project. The icon above is part of a free icon set by Flat Icons. On their website, you can download their free set with 16 icons, or you can purchase the entire set with 146 icons for only $12!