Le Grand Club de RDS, améliorations

Le projet groupes de Grand Club consiste plus ou moins en un clone des groupes de Facebook à la sauce sportive… Il sera mis en ligne graduellement dans les prochaines semaines.

En plus du projet Groupes plusieurs projets d’améliorations sont constamment en cours sur le Grand Club et nous permettent de l’améliorer à chaque semaine. Voici en gros le travail qui a été fait dans les dernières semaines afin d’améliorer la stabilité et la performance du Grand Club face à la demande toujours grandissante des usagers.

Le language: Ruby Enterprise Edition 1.8.6
La version ‘Enterprise’ de Ruby permet d’améliorer les performances générale du language et de corriger certaines défaillance de celui-ci. Oui, nous pensons déjà à le changer pour Ruby Enterprise 1.8.7….

La Fondation: Ruby On Rails
Nous avons passé à la version de Rails de 2.1.0 à 2.2.2 et nous comptons encore la changer pour la version 2.3.4 afin d’améliorer encore la performance de Rails.

Database Performance:
Plusieurs requêtes ont été optimisés. Notre façon de faire les requêtes avec Rails (ActiveRecords) a également été revue afin d’être plus optimal.

Caching: Squid
Squid est un proxy permettant de cacher les images, les css et les javascripts. Ceci nous permet de servir les pages plus rapidement. Il est également prévu de se servir de memcache pour cacher les pages du Grand Club afin de les servir plus rapidement encore.

Moteur de recherche: Caching, Ferret Vs Sphinx
Nous avons changer la façon de faire les recherches lors de certaines recherches en modifiant et optimisant les requêtes. De plus, les résultats de recherches sont maintenant caché pendant un certains temps. Par le passé, nous avons expérimentés plusieurs problèmes avec l’instabilité du moteur de recherche Ferret. C’est pour cette raison qu’un projet nous permettant de tester et d’implanter Sphinx (un autre moteur de recherche) a été mis sur pied. La dernière étape dans les tests sur Sphinx sera mise en place dans les prochaines semaines. Si les tests vont bien nous serons en mesure d’implanter ce nouveau moteur de recherche.

Dark Release:
Le principe de Dark release nous vient de Facebook. Il consiste à mettre en ligne graduellement des nouveaux features. Cette technique nous permet de suivre plus facilement les réactions de l’application et des serveurs. Une subite montée en charge dû à un nouveaux features est ainsi mieux contrôlé. Ce mécanisme nous permet également de couper temporairement un feature afin de supporter une charge plus grande. On pourrait par exemple couper le lifestream, lors de la journée des transactions afin d’avoir un gain en performance.

Ceux qui ont contribué à rendre tout cela possible Benoît, Martin, Amirouche, Louis, Marc-Antoine, Ana, Yves, Sébastien, Daniel et moi-même Jean-François.

Tags: , , , , ,

2 comments

  1. [...] Un mot rapide pour mentionner que je travail depuis quelques mois déjà sur le Grand Club de RDS. Mes interventions sur le Grand Club sont motivés par le défi de le rendre plus performant et aussi plus “user friendly”. J’ai écrit un article au début de novembre afin de démontrer les améliorations qui ont été apportés au Grand Club depuis ces quelques mois. Vous pouvez consulter ce bref articles sur le blog de l’agence. [...]

  2. Je ne connaissais pas l’approche de déploiement « Dark release ». Intéressant.

Leave a comment