GyazoはCloudflareの負荷分散機能を使用して、スクリーンショット共有プラットフォームへのアップロードを最適化しています。
Gyazo では、クラウドベースのインフラストラクチャを活用し、ユーザーはスクリーンショットを撮って簡単に作成できるリンクでこれをすぐにシェアすることができます。数百万人ものアクティブユーザー数を誇るGyazoは、世界最大、最速のスクリーンショット/GIF画像作 成ツールです。
Gyazoの課題:グローバルなユーザーベースへのアップロードの最適化
当初、Gyazoのすべてのサーバーは米国内にあり、GyazoはCDN(コンテンツデリバリーネットワーク)を使用してコンテンツをユーザーに配信していました。 Gyazoのユーザーはおおむね、ヨーロッパに45%、アジアに15%、米国内に40%で構成されているため、このサーバーの配置は米国内ユーザーにとっては都合よく機能しましたが、米国外のユーザーは読み込み時間が長過ぎると感じていました。 Gyazoを開発したNota社のCEO、洛西一周氏は、「コンテンツ配信の面ではCDNが優れているからです。しかし、コンテンツのアップロードには向いていません。 弊社ユーザーの一部、例えばオーストラリアのユーザーは、小さなスクリーンショットをアップロードするだけでも30秒以上かかっていました」と語っています。 アップロード時のレイテンシーは、この例のオーストラリアのGyazoのユーザーからのコンテンツが、南アジアをルーティングして太平洋を渡って、米国内のどこかにあるGyazoのサーバーに到達してから、同じルートでオーストラリアに戻っているために発生しています。
この問題を克服するために、Gyazoは、世界中のアップロードエッジサーバーの独自のネットワークを構築しましたが、それはさらなる問題につながりました。つまり、これらのエッジサーバーでトラフィックの急増が発生し、その結果、使用量が最も増大した時点でパフォーマンスが低下したのです。
Gyazoのソリューション:フェイルオーバーによるグ ローバル負荷分散
Gyazoは、Cloudflareの負荷分散用Early Accessプログラムを知り、Gyazo独自のソリューションを完璧にするための、補完的な機能として利用できるのではないかと考えました。 現在、Cloudflareのグローバル負荷分散機能を用いて、Gyazoのユーザーを最も近く最も状態の良いアップロード用サーバーに送信し、ユーザーが可能最速のアップロード時間を体感できると同時にサーバーが過負荷にならないよう高度な制御を行っています。
さらに、負荷分散によりトラフィックを分散してサーバーの状態を維持しており、Gyazoのユーザーは以前のようなパフォーマンスの劣化を感じることがありません。 加えて、サーバーがダウンした場合には、負荷分散のフェイルオーバー機能により、Gyazoのユーザーにサーバー故障を感じさせる間もなく迅速に再ルーティングされます。 洛西氏は、「フェイルオーバーにも相当助けられました。以前のDNSプロバイダーの時は、DNSベースのフェイルオーバー用に対処手順を作成していましたが、 セットアップが複雑で、完全に設定が反映されるまで何時間もかかっていました。」と語っています。