Node.js, lecteur Google Go Uber

Uber a créé deux plates-formes linguistiques émergentes, Go et Node.js, des rouages ​​critiques dans ses opérations. Tom Croucher, ingénieur en fiabilité du site Uber, a détaillé l'utilisation des plates-formes par l'entreprise lors de la récente conférence Node.js Interactive à Portland.

Les systèmes de répartition d'Uber fonctionnent sur Node, la plate-forme JavaScript côté serveur. Lorsqu'un client ouvre une application ou visite le site Web pour réserver un trajet ou utilise des API pour voir quels véhicules sont disponibles, la plupart de ces systèmes fonctionnent sur Node, a déclaré Croucher.

«La majorité d'entre eux ont été écrits sur Node depuis, je dirais, la première année de la société, si tôt», a déclaré Croucher. Il a également noté qu'Uber a été l'un des premiers à adopter Node et l'une des premières entreprises à «vraiment construire une grande entreprise en plus».

Mais Node.js n'est pas la seule bête de somme chez Uber. Le langage Go de Google a également pris pied. «Nous avons commencé à écrire certaines choses en Go, c'est donc parmi les systèmes hautes performances où nous pourrions initialement écrire quelque chose dans Node. Certains sont actuellement en cours de réécriture dans Go à des endroits particuliers où cela a du sens, juste pour obtenir un peu un peu plus d'optimisation du système. "

Pour le moment, Uber exécute l'ancienne version 0.10 de Node, car il a besoin de voir "un avantage clair pour passer à une nouvelle version". Mikeal Rogers, responsable de la communauté Node.js Foundation, souhaite que les utilisateurs passent à la version 4.

En dehors des tendances Node.js et Go, Python a également sa place. "Une des choses que nous avons trouvées est qu'il existe plusieurs technologies que nous utilisons chez Uber, y compris Python", a-t-il déclaré. «Il est utile pour nous de pouvoir embaucher à partir d'un pool diversifié de candidats, donc une grande partie du système est écrite en Python. Nous avons constaté qu'il existe une multitude de développeurs Python qui écrivent d'excellents services en Python, en particulier autour de certains des aspects commerciaux et différentes choses comme ça. "