Viaduc, cinq ans après : Moder... Note

Viaduc, cinq ans après : Moderniser le maillage de services axé sur les données

Viaduct, le maillage de services axé sur les données d'Airbnb, est désormais open-source. En cinq ans, l'utilisation de Viaduct chez Airbnb a considérablement augmenté, le trafic ayant été multiplié par huit et le nombre d'équipes ayant doublé. Il continue d'être guidé par trois principes fondamentaux : un schéma central, une logique métier hébergée et la réentrance. Le schéma central intègre les données de toute l'entreprise, faisant de Viaduct un maillage de données incontournable. L'hébergement de la logique métier directement dans Viaduct, rendu possible par une plateforme sans serveur, simplifie les opérations pour les développeurs. La réentrance permet à la logique hébergée de se composer avec d'autres logiques via des fragments et des requêtes GraphQL, tout en conservant la modularité.Une refonte récente, "Viaduct Modern", aborde les complexités passées en simplifiant l'API Tenant destinée aux développeurs en deux types de résolveurs : les résolveurs de nœuds et de champs. Cette modernisation introduit également la modularité des locataires, en formalisant les "modules de locataires" comme des unités de schéma et de code appartenant à une seule équipe, composées via GraphQL. La modularité du framework a également été améliorée, créant des limites d'abstraction plus fortes entre le moteur d'exécution GraphQL, l'API Tenant et le code hébergé. La nouvelle API du moteur est typée dynamiquement, tandis que l'API Tenant est typée statiquement, ce qui permet une évolution indépendante.Viaduct offre une migration progressive en exécutant simultanément les API Tenant Classic et Modern sur le nouveau moteur. D'autres améliorations incluent une meilleure observabilité, des temps de construction plus rapides grâce au développement axé sur le schéma et à la génération directe en bytecode, ainsi qu'un répartiteur pour la mise à l'échelle de Kubernetes et l'atténuation des rayons d'explosion. Airbnb rend Viaduct open-source pour bénéficier des contributions de la communauté et pense qu'il peut être précieux pour les projets GraphQL à grande échelle et naissants. L'API Modern est actuellement en alpha, mais le nouveau moteur est en pleine production.
CdXz5zHNQW_Ry0cTKX3TG.jpeg