Twitter utilise bittorrent pour ses mises à jour de serveurs

par Korben -

On connait tous Bittorrent et ce qui a fait le succès de ce protocole d’échange est clairement le téléchargement illégal… Mais vous savez aussi que Bittorrent est une techno merveilleuse qui est utilisée pour soulager les serveurs en permettant par exemple la diffusion de distrib Linux (ou autres OS, de jeux…etc), ou encore pour permettre la diffusion à grande échelle de films via VOD…

Mais saviez vous que Bittorrent est de plus en plus utilisé pour mettre à jour d’immenses réseaux de serveurs comme ceux de Facebook ou Twitter ?

Par exemple, chez Twitter, ils ont des centaines de serveurs… Pour mettre à jour tout ça, ils passaient par un serveur principal Git (un équivalent de SVN) sur lequel chaque serveur venait récupérer les fichiers mis à jour… Toute l’opération durait environ 15 minutes.

Trop long !!

Les ingénieurs de Twitter ont donc cherché une solution afin d’accélérer le processus de mise à jour et ils ont crée Murder. Murder est un moyen de distribuer des fichiers à un grand nombre de serveurs en production, en utilisant les principes de base de bittorrent. Le premier peer (client torrent) va chercher les fichiers sur le serveur mère (ici le git) puis dès qu’il en possède un petit morceau, commence à le redistribuer à ses frères, qui font de même et ainsi de suite… Même principe que lorsque vous téléchargez un film en fait.

Ainsi, on passe à un déploiement qui prenait 15 minutes, à un déploiement qui ne prend plus que 12 secondes ! Oui ! 12 secondes, soit 75 fois plus rapide qu’avant.

Murder utilise la librairie Bittornado (sous licence ouverte Apache) et est dispo en téléchargement sur Github. Si vous êtes dans un environnement où les mises à jours sont complexes et prennent du temps, l’option bittorrent est peut être une solution à étudier pour vous soulager la vie.

Voici pour finir, la petite vidéo de Larry Gadea (Twitter), qui vous expliquera tout ça plus en détails…

[Source et photo]