Témoignages de clients / Marketing numérique

2021
Logo Pinterest

Pinterest améliore de 80,5 % la fiabilité de son pipeline de développement iOS en utilisant des instances Mac Amazon EC2

Pinterest a accéléré le développement, et amélioré la stabilité de l'infrastructure et le délai de mise sur le marché en migrant son environnement de développement iOS vers des instances Mac Amazon EC2.  

80,5 %

Diminution de 80,5 % des échecs de développement liés aux machines dans le pipeline CI/CD

Réduction des coûts

Réduction des coûts de développement

18,4 %

Accélération du développement et de la diffusion des applications iOS de 18,4 %

Amélioration de la fiabilité et de la stabilité

de l'infrastructure CI/CD

Des développeurs performants

Pour se concentrer sur la création de services innovants

Présentation

Pinterest compte plus de 444 millions d'utilisateurs mensuels dans le monde sur ses applications web et mobiles. Pour prendre en charge son application iOS, les développeurs de Pinterest ont utilisé des ordinateurs sur site qui pouvaient accéder à macOS et à l'environnement de développement intégré Xcode d'Apple. Ces derniers sont nécessaires pour créer, développer, tester et déployer les mises à niveau et les nouvelles fonctionnalités de toute application Apple. Cependant, la plateforme de découverte visuelle souhaitait une infrastructure plus rapide et plus efficace pour son environnement de développement iOS et a cherché une solution sur Amazon Web Services (AWS).

Pinterest a migré son pipeline d'intégration et de livraison continues (CI/CD) pour les applications iOS vers des instances Mac Amazon Elastic Compute Cloud (Amazon EC2), qui permettent aux développeurs de fournir et d'accéder de manière transparente aux environnements de calcul macOS dans le cloud. Grâce aux instances Mac Amazon EC2, Pinterest a réduit de 80,5 % les échecs de développement liés aux machines et a accéléré le développement de 18,4 %.

458961641

Opportunité | Accéder à l'environnement macOS dans le cloud

En tant que moteur de découverte visuelle que les gens utilisent pour trouver de l'inspiration dans des catégories telles que la maison, la nourriture, le style et la beauté, Pinterest est devenu une plateforme mondialement connue. Pour créer, tester et déployer des applications pour ses utilisateurs iOS, les développeurs de Pinterest utilisaient des ordinateurs sur site, que l'entreprise devait configurer après les avoir obtenus pour les mettre à niveau manuellement. « Avoir à gérer des machines physiques était très difficile », explique Oliver Koo, ingénieur logiciel chez Pinterest. « Nous avions besoin de personnel pour configurer tous les ordinateurs portables, les surveiller et les mettre à niveau en permanence. Si une machine avait un problème, nous subissions des interruptions de service et une latence plus élevée. » Cet environnement sur site a allongé le développement, ce qui a eu un impact sur le délai de commercialisation des fonctionnalités iOS de Pinterest.

Pinterest avait besoin d'un moyen évolutif et efficace pour créer, tester et déployer les fonctionnalités et les mises à niveau d'iOS. Ayant utilisé les services d'AWS depuis son lancement en 2010, l'entreprise s'est tournée vers AWS et a découvert les instances Mac Amazon EC2. Pinterest a réalisé qu'elle pouvait utiliser ce service pour accéder aux environnements macOS et les provisionner en quelques minutes, faire évoluer la capacité selon les besoins et optimiser ses coûts informatiques. « Nous avons constaté que la migration vers AWS permettrait de rationaliser l'expérience de développement », déclare Koo. « Les instances Mac Amazon EC2 constituent le premier service qui permet aux utilisateurs d'exécuter des environnements macOS à la demande dans le cloud, une véritable révolution dans le domaine. » En mars 2021, Pinterest a commencé à migrer son pipeline CI/CD vers des instances Mac Amazon EC2.

kr_quotemark

Grâce aux instances Mac Amazon EC2, nous avons réduit de 80,5 % le nombre d'échecs de développement liés aux machines, ce qui est énorme. »

Oliver Koo
Ingénieur logiciel, Pinterest

Solution | Améliorer le délai de commercialisation grâce aux instances Mac Amazon EC2

En août 2021, Pinterest avait terminé sa migration vers les instances Mac Amazon EC2. Grâce à cette solution, l'entreprise a rationalisé son pipeline CI/CD et peut désormais faire évoluer son environnement de développement iOS à la demande. « Sur AWS, nous pouvons désormais augmenter de 400 % le nombre de machines de construction lors des pics de demande, au lieu de gérer un groupe limité de machines », explique Koo. Pinterest utilise Buildkite Agent Scaler, qui s'exécute en tant que fonction sur AWS Lambda. Il s'agit d'un service de calcul sans serveur et orienté événements qui permet de faire évoluer efficacement l'infrastructure CI/CD de l'entreprise en suivant le nombre de tâches à exécuter et en ajustant la taille de la flotte d'instances Mac Amazon EC2 de Pinterest en conséquence. « Lorsque la demande faiblit, nous pouvons facilement réduire les capacités en conséquence », explique M. Koo. Les développeurs n'ont plus besoin d'attendre que la capacité se libère pendant les pics de demande, ce qui accélère le développement. Il ne faut que quelques minutes à Pinterest pour lancer une nouvelle instance Mac Amazon EC2, au lieu des heures ou des jours qu'il faudrait pour se procurer une nouvelle machine. Par rapport à l'exécution de constructions avec des machines sur site, Pinterest peut développer et lancer des applications iOS 18,4 % plus rapidement en utilisant des instances Mac Amazon EC2. Parce qu'elle n'a plus besoin de se procurer des machines et ne paie que pour la capacité de calcul macOS qu'elle utilise, Pinterest a considérablement réduit ses coûts de développement.

Pinterest a également simplifié ses processus de développement en utilisant des instances Mac Amazon EC2. Les tests des nouvelles fonctionnalités et des mises à niveau sont désormais plus rapides et plus simples. « Le processus de mise à niveau, de correction et de déploiement des correctifs de sécurité dans notre pipeline CI/CD était assez complexe », explique M. Koo. « Mais les instances Mac Amazon EC2 et les nouveaux processus que nous avons mis en place sont vraiment simples à comprendre. » Pour lancer une instance Amazon EC2, Pinterest crée une Amazon Machine Image (AMI), qui contient des informations telles que les autorisations qui contrôlent les comptes AWS pouvant utiliser l'AMI. Comme ses développeurs ont désormais la possibilité de créer une AMI et de configurer rapidement ces règles, la vitesse de développement de Pinterest a augmenté de 42 %. L'infrastructure rationalisée permet également à Pinterest de simplifier l'intégration de nouveaux employés. Ainsi, les développeurs peuvent commencer à travailler plus tôt et innover plus rapidement.

Pour sécuriser son pipeline CI/CD, Pinterest s'appuie sur des services AWS comme Gestion des identités et des accès AWS (AWS IAM), qui fournit un contrôle d'accès très précis sur l'ensemble d'AWS. Chaque cluster d'instances Mac Amazon EC2 utilise un rôle AWS IAM différent auquel sont attribuées différentes autorisations. Lorsqu'un utilisateur tente d'accéder au cluster, le système accorde ou refuse automatiquement l'accès en fonction des politiques de sécurité configurées par Pinterest L'entreprise utilise également AWS Secrets Manager, qui aide les développeurs à faire des rotations, gérer et récupérer facilement les informations d'identification des bases de données et les clés API tout au long de leur cycle de vie. Pinterest s'appuie sur AWS Secrets Manager pour centraliser l'authentification macOS, ce qui empêche davantage les utilisateurs non autorisés d'accéder à son environnement de développement iOS.

Pinterest utilise des instances Mac Amazon EC2 pour améliorer la stabilité de son pipeline CI/CD afin que ses développeurs puissent publier de nouvelles fonctionnalités plus rapidement. Auparavant, les développeurs devaient fréquemment redémarrer les machines sur site après de longues périodes de fonctionnement, ce qui interrompait le développement. Désormais, ils ont toujours accès à une infrastructure CI/CD fiable. Par conséquent, les développeurs Pinterest peuvent créer de meilleures fonctionnalités et éviter les retards lors de la soumission des mises à jour à l'App Store d'Apple. « Grâce aux instances Mac Amazon EC2, nous avons réduit de 80,5 % le nombre d'échecs de développement liés aux machines, ce qui est énorme. » En utilisant les instances Mac Amazon EC2, les développeurs de Pinterest n'ont plus besoin de passer du temps à résoudre des problèmes et à gérer l'infrastructure, ce qui leur permet de se concentrer sur la création de nouvelles fonctionnalités innovantes pour mieux aider les utilisateurs de Pinterest.

Résultats | Soutenir l'innovation continue sur AWS

Grâce aux instances Mac Amazon EC2, Pinterest a considérablement amélioré ses temps de développement, ses délais de commercialisation et la stabilité de son pipeline CI/CD. À l'avenir, l'entreprise prévoit d'utiliser Amazon Relational Database Service (Amazon RDS), qui simplifie la mise en place, l'exploitation et la mise à l'échelle d'une base de données relationnelle dans le cloud, afin d'enregistrer et de gérer les échecs de développement. Grâce à ces informations, Pinterest peut mieux comprendre la fréquence de certaines erreurs et déployer des solutions pour les résoudre. « AWS est le premier à fournir des environnements macOS à la demande dans le cloud », déclare Koo. « Grâce aux instances Mac Amazon EC2, nous rendons les environnements de construction iOS et les machines Mac beaucoup plus facilement accessibles aux développeurs. »

À propos de Pinterest

Pinterest est un moteur de découverte visuelle utilisé par plus de 444 millions de personnes chaque mois pour trouver des recettes, des idées de décoration et de style, et bien plus encore. Basé à San Francisco, en Californie, Pinterest a été lancé en 2010.

Services AWS utilisés

Amazon EC2

Amazon Elastic Compute Cloud (Amazon EC2) est un service Web qui fournit une capacité de calcul sécurisée et redimensionnable dans le cloud. Destiné aux développeurs, il est conçu pour faciliter l'accès aux ressources de cloud computing à l'échelle du Web.

En savoir plus »

Instances Mac Amazon EC2

Les instances Mac Amazon EC2 permettent aux clients d'exécuter pour la première fois des charges de travail macOS à la demande dans le cloud. Cela permet d'étendre la flexibilité, la capacité de mise à l'échelle et les avantages en termes de coûts d'AWS à tous les développeurs Apple.

En savoir plus »

AWS Secrets Manager

AWS Secrets Manager vous aide à protéger l'accès à vos applications, services et ressources informatiques.

En savoir plus »

Explorer le parcours Pinterest en matière d'innovation avec AWS

Plus de témoignages sur Pinterest

aucun élément trouvé 

1

Démarrer

Les organisations de toutes tailles et de tous secteurs transforment leur activité et exécutent leurs missions au quotidien à l'aide d'AWS. Contactez nos experts et démarrez votre transition vers AWS dès aujourd'hui.