位于原始服务器上的开始处理请求

Your go-to forum for bot dataset expertise.
Post Reply
asikurrahmanshuvo
Posts: 111
Joined: Mon Dec 23, 2024 3:58 am

位于原始服务器上的开始处理请求

Post by asikurrahmanshuvo »

我们首先使用 SSR 页面和 中间件来解决这个问题,它将在原始服务器上运行中间件功能。

在第二个示例中,这将通过静态页面和 高级中间件来解决,它将在边缘运行中间件功能。

为了概述您所看到的内容,当用户发出查看请求时MyEcommercePage,会发生以下情况:

根据对象确定用户所在的国家/地区,并在重写请求 之前将其添加到 URL 中
该页面使用country查询参数来确定 prop 的值bannerMessage应该是什么
使用传入的 prop 的值来渲染页面的 HTML,并将响应返回给用户
如上所述,这种方法的缺点是原始服务器需要在每个请求上 波斯尼亚 Whatsapp 数据 运行以构建 HTML 来发送回用户,而对于请求量很大的页面,这会导致服务器负载过大,并且与提供该页面相关的成本更高。

您可以通过为每个用户群较大的地区制作静态页面并根据country中间件中的值重写或将用户重定向到这些页面来解决此问题。这种方法的缺点是它会导致大量重复的逻辑,这很容易导致您的网站出现不一致。

鉴于此,让我们看一下我们的静态页面和边缘函数示例。

示例 2:带有 高级中间件的静态页面

再次概述一下上述代码中发生的情况:

现在位于边缘位置middleware而不是原始服务器的
用户所在的国家/地区再次通过 对象确定
使用Netlify 的高级 中间件req进行包装
向源服务器发出请求,但在这种情况下,由于请求的页面是静态的,因此由 CDN 提供服务,而不是由源服务器本身处理。应该注意的是,此时代码中response包含横幅 HTML,内容为“Hello world!”
根据 的值country,我们在将响应返回给用户之前更新 HTML 和页面属性。现在,如果用户位于加拿大,则 HTML 和页面属性将包含我们想要向加拿大客户显示的订单折扣代码消息
通过在边缘执行这样的本地化逻辑,我们还可以选择在该边缘位置缓存该本地化响应。

这意味着,对于其他对该页面发出请求且很可能想要该页面的相同版本的用户来说,通过使缓存的响应在物理上更接近他们所在的位置,可以显著减少满足请求所产生的延迟。
Post Reply