这里最好的情况是边缘位置能够完全满足请求,并向客户端发送响应。但假设它出于某种原因无法满足请求。也许它需要比它所能提供的信息更多的信息,或者需要使用云提供商中的某个特定服务,而该服务无法从边缘功能访问。
在这种情况下,边缘位置将向原始服务器发出请求,原始服务器将执行该请求,并将响应从原始服务器发送回边缘位置。此时,边缘位置可以选择缓存来自原始服务器的响应,然后再将响应发送回客户端。可用的缓存选项因供应商而异,因此强烈建议在此处进行进一步研究。
边缘缓存的能力可以带来巨大的性能提升和更简单的站点架构,我们稍后将通过将服务器端呈现的页面转换为静态页面来查看 Jamstack 站点中的边缘功能案例研究。
案例研究:将服务器端呈现页面 (SSR) 转换为静态页面
我们为什么要这样做呢? 主要原因是源服务器每次发 巴西 Whatsapp 数据 出请求时都会呈现 SSR 页面,如果转换为静态页面,则会带来两项改进:
静态页面可以被缓存并在内容分发网络 (CDN) 上提供服务,而 SSR 页面则不能。
通过将页面托管在 CDN 上,与 SSR 页面相比,可以在满足请求时更快地访问它。
原始服务器上的负载被消除,因为它不再负责满足所有这些请求。
如果转换为静态页面的页面是请求量很大的页面,则在 CDN 上提供的页面会减少原始服务器上的负载,并有助于降低与将页面作为 SSR 页面提供相关的成本和性能瓶颈。
为了为我们的用例设置场景 - 让我们想象一下,我拥有一个蓬勃发展的电子商务业务,用户遍布世界各地,并且我有一个对所有用户都相同的页面,除了我在顶部显示的横幅外。
横幅根据客户所在位置包含不同的信息。有时可能是我在某个国家或城市促销,有时可能是 GDPR 通知或简单的“欢迎”信息。
让我们看一下这个 网站可以是什么样子来实现这种行为。