WebP Cloud Services Blog

如何选择 WebP Cloud 的区域?WebP Cloud Services 区域一览

· Nova Kwok

许多人在使用 WebP Cloud 的时候会发现这里有多个区域可以选择,在选择上犯难。

本文将介绍 WebP Cloud Services 的区域信息,指导你如何选择适合自己的区域。

目前 WebP Cloud Services 下有三个服务:

其中前两者是免费的公共服务,由于我们的服务依托 Hetzner 构建,所以我们在 Hetzner 的支持范围内提供区域性支持,这三个服务背后的区域信息如下:

服务名称美国德国新加坡
WebP Cloud
Fly
Public Services

虽然 WebP Cloud Services 在使用 Cloudflare CDN,可以在全球范围内做到较低的连接延迟,但是我们依然需要注意 WebP Cloud 工作原理。

当用户发起请求的时候,请求会通过用户附近的 Cloudflare CDN 边缘节点访问到所选择的 WebP Cloud 区域上,此时如果 WebP Cloud 未缓存所请求的资源,便会通过 Cloudflare Workers 对请求的源站进行回源操作,拉取原始图片到本地进行优化,并最终输出优化后的图片。

举例来说,如果您的源站(例如 Cloudflare R2)区域在日本,并创建了一个位于德国的 WebP Cloud Proxy,此时一个美国用户请求图片的访问顺序会是:

美国用户 -> 美国 Cloudflare 边缘 -> 德国 WebP Cloud -> 日本的源站

可以看到在上面的路径中

  • 「美国 Cloudflare 边缘 -> 德国 WebP Cloud」之间会有至少 150ms 的延迟
  • 「德国 WebP Cloud -> 日本的源站」之间又有额外的 240ms 的延迟

这样的路径下用户的体验就会较差。

所以区域选择的原则需要尽量减少「大部分访客所在区域」到「WebP Cloud 区域」的延迟,并且减少「WebP Cloud 区域」到「源站」的延迟,其中前者更为重要,因为 WebP Cloud 会尽量缓存您的图片,所以除了初次请求以外后续请求就只有「访客」->「WebP Cloud」之间的延迟了。

例如,在上述例子中,如果将源站选择到美国,并且在美国区域创建 WebP Cloud Proxy,那么路线就成了这样:

美国用户 -> 美国 Cloudflare 边缘 -> 美国 WebP Cloud -> 美国的源站

用户体验便会好很多。

对于中国大陆的用户而言,由于 Cloudflare 在中国大陆没有边缘节点,截止本文写作时大部分的请求都会访问到 Cloudflare 美国的边缘,所以我们建议如果面向中国大陆用户的话,在美国区域创建 WebP Cloud Proxy 可以获得最好的访客体验。

一点剧透

从上述流程我们可以明白,由于地理位置限制,我们始终无法做到让全球的用户都获得一个较好的体验,例如 WebP Cloud Proxy 和源站都在德国,那一个美国用户访问的话始终额外的 300ms 的连接延迟在,这一点我们也很不喜欢。

所以我们内部在验证一个新的功能,称为「Multi-region cache replication」,等到这个功能上线的时候,用户将不再为选择区域犯难,届时 WebP Cloud 的 Proxy 将会额外提供一个「Global」的选项,在这个选项下,我们将在目前已经覆盖的两个州(美洲,欧洲)就近响应访客的请求,示意图如下:

目前这个功能我们在内部开发中,已经完成了基本的 PoC,上线进度会视用户量/我们的营收情况以及用户的反馈而定,目前初步计划在完成了基本的开发后优先提供给有需求的 Plus/Lite 使用,所以如果你也对这个功能感兴趣的话,欢迎来注册使用 WebP Cloud~


WebP Cloud Services 团队是一个来自上海和赫尔辛堡的三人小团队,由于我们不融资,且没有盈利压力 ,所以我们会坚持做我们认为正确的事情,力求在我们的资源和能力允许范围内尽量把事情做到最好, 同时也会在不影响对外提供的服务的情况下整更多的活,并在我们产品上实践各种新奇的东西。

如果你觉得我们的这个服务有意思或者对我们服务感兴趣,欢迎登录 WebP Cloud Dashboard 来体验,如果你好奇它还有哪些神奇的功能,可以来看看我们的文档 WebP Cloud Services Docs,希望大家玩的开心~


Discuss on Hacker News