Gyazo 使用 Cloudflare Load Balancing 优化上传到其屏幕快照共享平台的内容。
Gyazo 利用基于云的基础设施,允许用户快速获取屏幕截图,然后通过即时创建的链接轻松共享截图。Gyazo 拥有数百万活跃用户,是世界上最大、最快的屏幕截图和屏幕 GIF 创建工具。
Gyazo 的挑战:为全球用户群优化上传
最初,Gyazo 的所有服务器都位于美国,并且 Gyazo 使用 CDN(内容交付网络)将其内容交付给用户。 Gyazo 在欧洲的用户大约占 45%、亚洲用户约占 15%、美国用户约占 40%,因此该策略对美国用户来说效果很好,但美国以外用户的上传时间始终较长。 Gyazo 创造者、Nota 首席执行官 Isshu Rakusai 解释说:“那是因为 CDN 的长处是交付内容,而不太合适用于上传内容。 例如,在澳大利亚,我们的一些用户上传一个小小的屏幕截图就需要 30 秒以上的上传时间。” 上载延迟是由于来自澳大利亚 Gyazo 示例用户的内容需要通过南亚、穿越太平洋,路由到 Gyazo 在美国某处的服务器,然后又沿同一路线返回。
为了解决这个问题,Gyazo 在全球范围内建立了自己的上传边缘服务器 网络,但这又导致了另一个问题:这些边缘服务器可能会遇到流量高峰,然后在使用量最大时表现不佳。
Gyazo 的解决方案:全局负载平衡和故障转移
Gyazo 了解到 Cloudflare 针对负载均衡的 Early Access 计划,认为它可能提供完善其专有解决方案所需的补充功能。 Cloudflare 的全局负载平衡现在可以智能地将 Gyazo 用户的流量发送到最近、最稳健的上传服务器,从而确保用户体验到最快的上传速度,并且保证服务器不会过载。
此外,通过分配流量并保持服务器运行状况,负载平衡可确保 Gyazo 用户不会遭遇之前发生的性能下降情况。 另外,借助负载平衡的故障转移功能,当服务器出现故障时,Gyazo 的用户会被快速重新路由,因此他们甚至不会注意到服务器是否发生了故障。 Rakusai 解释说:“故障转移对我们也非常有帮助,我们与以前的 DNS 提供商一起,创建了一个快速破解来进行基于 DNS 的故障转移,但这设置起来很复杂,变更要数小时才能完全传播。”