App mobile : pourquoi LinkedIn est passé de Ruby on Rails à Node.js

Le directeur de l'activité d'ingénierie mobile du réseau social est revenu sur le choix de LinkedIn de migrer la couche serveur de son application mobile vers le framework JavaSript.

C'est en 2011 que LinkedIn a décidé de migrer l'infrastructure serveur de son application mobile de Ruby on Rails vers Node.js. Kiran Prasad, directeur de l'activité d'ingénierie mobile du réseau social, est revenu en détails sur les raisons de ce choix sur son blog. Le projet part d'un constat : seuls 7 à 8% des membres de LinkedIn utilisaient alors l'application mobile. Un manque de performance de l'application est alors identifié comme source du blocage.

Partant de là, LinkedIn évalue trois solutions possibles : Rails/Event Machine, Python/Twisted et Node.js. Les bénéfices ayant milité pour le choix de ce dernier ? Une performance globale jugée très bonne (sur certains scénarios, LinkedIn relève que Node.js est 20 fois plus rapide que Ruby on Rails), le rapport qu'il offre entre performance de traitement des requêtes et consommation de ressources serveur (il est 10 fois meilleur que celui de l'architecture précédente), enfin le choix de JavaScript permet également à LinkedIn d'harmoniser ses codes côté serveur et côté client.

Serveurs / Framework