速度快,可以说是基因里种下的必然结果。
原因就在于,传统的反代方案,每次未命中缓存都要去国外 Gravatar 同步数据,一来一往,通常 1.4 秒才能缓存好一张图。这样就完了?当然不是,因为 Gravatar 会根据图片的参数不同而返回不同的图片,所以反代方案会在每次 URL 参数变化时触发回源……
但是 Cravatar 维护了自己的本地缓存池,这使得我们仅需要在第一次时从 Gravatar 取数据,以后的请求则直接从缓存池中取之前缓存的原图并在本地对图像处理,这省略了再次回源的请求流程。以下图片说明了这一过程 (其中 s=xxx 代表的是 URL 查询参数):

除了缓存池的特性外,Cravatar 还将为所有支持 Webp 的设备返回 Webp 图片,单这一项又能加快不少的速度。
开始在 Cyberforums 上讨论 meta.cyberforums.com