关于 SAP Spartacus CSR fallback 之后,是否仍然会继续进行 SSR 的处理

简介: 关于 SAP Spartacus CSR fallback 之后,是否仍然会继续进行 SSR 的处理

来自 nguniversal 的 express engine 渲染完了后,渲染完毕的 HTML 源代码保存在 150 行代码 html 里,callback 就是 Spartacus 团队开发的 ssr optimization engine 的实现:image.png回调执行时,maxRenderTimeout 不为空,说明 maxRenderTime 驱动的 setTimeout 尚未执行,这说明 maxRenderTime 超时没有发生,因此不会执行到第 170 行。image.pngimage.png先调用 callback 把 html 返回给请求端:image.png再保存到 cache 里:image.png下面测试直到 timeout 时间到达,仍未开始 render,fallback 到 CSR 之后,是否还会在后台将 SSR 执行完毕。

让断点停在这里,等待 timeout 即 90秒,一分半钟。image.png去做了一会家务回来,F8,果然 CSR fallback 了:image.png也看到了对应的 log:SSR rendering exceeded timeout 90000, fallbacking to CSR for /image.png如果此时 maxRenderTimeout 时间也到达了,那么会执行上图绿色高亮代码,将 maxRenderTimeout 清空,然后我们指定的 callback 会被调用到。image.png注意,在上图的上下文里,SSR 已经成功完成了,只是因为 maxRenderTimeout 已经到达,因此渲染好的 HTML 被丢弃。如果 timeout 到达但是 maxRenderTimeout 没有到达,则渲染好的 HTML 会进一步得到处理。

相关文章
|
18天前
|
前端开发 JavaScript 开发者
Spartacus 2211 客户成功启用 SSR
Spartacus 2211 客户成功启用 SSR
31 0
|
18天前
|
缓存 前端开发 JavaScript
Spartacus SSR 使用场景里,CDN 应该 cache 哪些类型的页面
Spartacus SSR 使用场景里,CDN 应该 cache 哪些类型的页面
78 0
|
18天前
|
JavaScript 中间件 API
Spartacus 2211 启用 SSR
Spartacus 2211 启用 SSR
25 0
|
18天前
|
前端开发 API UED
Spartacus SSR 期间使用 browser function 会导致 error,回退到 CSR
Spartacus SSR 期间使用 browser function 会导致 error,回退到 CSR
42 0
|
18天前
|
测试技术 API
使用 jMeter 给 Spartacus SSR 发送 100 个并发的 SSR 请求,全部被 SSR 响应了
使用 jMeter 给 Spartacus SSR 发送 100 个并发的 SSR 请求,全部被 SSR 响应了
35 0
|
18天前
|
存储 前端开发 搜索推荐
Spartacus SSR fallback 成 CSR 时,仍然会在后端继续保持渲染
Spartacus SSR fallback 成 CSR 时,仍然会在后端继续保持渲染
34 0
|
18天前
|
JSON 开发者 数据格式
关于 SAP Spartacus LandingPage2Template 区域的 layout 设计实现
关于 SAP Spartacus LandingPage2Template 区域的 layout 设计实现
28 0
|
18天前
|
搜索推荐 开发者 UED
关于 SAP Spartacus 层的 UI 设计
关于 SAP Spartacus 层的 UI 设计
46 0
|
8月前
|
缓存 负载均衡 前端开发
SAP Spartacus 和 Sticky session 相关的话题
SAP Spartacus 和 Sticky session 相关的话题
42 0
|
8月前
|
存储
SAP Emarsys 和 SAP Spartacus 的集成
SAP Emarsys 和 SAP Spartacus 的集成
53 0