Gyazo

Gyazo optimise les téléchargements vers ses plates-formes de partage de capture d'écran avec l'équilibrage de charge Cloudflare.

En exploitant une infrastructure basée sur le cloud, Gyazo permet aux utilisateurs de prendre rapidement des captures d'écran, puis de les partager facilement via des liens créés instantanément. Avec des millions d'utilisateurs actifs, Gyazo est l'outil de création de captures d'écran et de gifs d'écran le plus important et le plus rapide au monde.

Le défi de Gyazo : optimiser le chargement pour une base d'utilisateurs mondiale

Au départ, tous les serveurs de Gyazo étaient installés aux États-Unis et Gyazo utilisait un CDN (Content Delivery Network) pour distribuer son contenu aux utilisateurs. Les utilisateurs de Gyazo sont en gros répartis comme suit : 45 % en Europe, 15 % en Asie et 40 % aux États-Unis. Cette stratégie a donc bien fonctionné pour les utilisateurs aux États-Unis, mais les utilisateurs situés en dehors des États-Unis ont remarqué des temps de chargement très longs. « La raison tient au fait que les CDN sont excellents pour distribuer du contenu », explique Isshu Rakusai, PDG de Nota, créateur de Gyazo, « mais ils ne sont pas bons pour charger du contenu. » Certains de nos utilisateurs, en Australie par exemple, avaient des temps de chargement supérieurs à 30 secondes pour ne charger qu’une petite capture d'écran." Cette latence du chargement était due au fait que le contenu de l'utilisateur Gyazo en Australie de notre exemple était acheminé par l'Asie du Sud, à travers l'océan Pacifique, vers l'un des serveurs de Gyazo situé quelque part aux États-Unis, puis revenait par le même chemin.

Pour lutter contre ce problème, Gyazo a mis au point son propre réseau de serveurs de chargement en périphérie partout dans le monde, ce qui entraîna un autre problème : ces serveurs de périphérie offraient des performances diminuées lors des pics de trafic.

Solution de Gyazo : équilibrage de charge global avec failover

Gyazo a vu l’offre Early Access de Cloudflare pour l'équilibrage de charge et a pensé qu'elle pourrait fournir les fonctionnalités complémentaires nécessaires pour perfectionner sa solution propriétaire. L'équilibrage de charge global de Cloudflare envoie maintenant intelligemment le trafic des utilisateurs de Gyazo vers le serveur de chargement le plus proche et le plus intègre, les utilisateurs bénéficient ainsi des vitesses chargement les plus rapides possibles et les serveurs ne sont pas surchargés.

graphique gyazo

De plus, en distribuant le trafic et en maintenant l’intégrité du serveur, l'équilibrage de charge garantit que les utilisateurs de Gyazo ne connaitront plus la dégradation des performances qu'ils subissaient au départ. Par ailleurs, grâce à la fonction de basculement (Failover) de l'équilibrage de charge, les utilisateurs de Gyazo sont rapidement redirigés lorsqu'un serveur tombe en panne, au point qu'ils ne remarquent même pas cette panne. « Cette fonction de basculement nous a également été très utile, » explique Rakusai, « Avec notre ancien fournisseur de DNS, nous avions créé un petit programme rapide pour effectuer un basculement basé sur le DNS, mais cela était très compliqué à mettre en place, et les changements prenaient des heures pour se propager complètement. »

Gyazo
Études de cas associées
Key Results

L'équilibrage de charge global améliore la latence internationale que les utilisateurs connaissaient auparavant

Les fonctions de basculement (Failover) et de contrôle d’intégrité (Healthchecks) offrent aux utilisateurs de Gyazo une navigation fluide et sans faille, même en cas de panne du serveur.

Cloudflare nous permet de nous concentrer davantage sur notre propre développement. Il nous est arrivé de dépenser la moitié de nos ressources d'ingénierie à la maintenance de notre réseau. De plus, lorsque le système était lent, tous les secteurs de l'organisation comme le marketing et le service client étaient affectés. Maintenant, tout le monde peut se concentrer sur nos utilisateurs.

Isshu Rakusai
Directeur général de Nota Inc. et créateur de Gyazo