关于 SAP Spartacus CSR fallback 之后,是否仍然会继续进行 SSR 的处理
SAP 处理 进行 关于 是否 之后 Spartacus 继续
2023-09-14 09:02:53 时间
来自 nguniversal 的 express engine 渲染完了后,渲染完毕的 HTML 源代码保存在 150 行代码 html 里,callback 就是 Spartacus 团队开发的 ssr optimization engine 的实现:
回调执行时,maxRenderTimeout 不为空,说明 maxRenderTime 驱动的 setTimeout 尚未执行,这说明 maxRenderTime 超时没有发生,因此不会执行到第 170 行。
先调用 callback 把 html 返回给请求端:
再保存到 cache 里:
下面测试直到 timeout 时间到达,仍未开始 render,fallback 到 CSR 之后,是否还会在后台将 SSR 执行完毕。
让断点停在这里,等待 timeout 即 90秒,一分半钟。
去做了一会家务回来,F8,果然 CSR fallback 了:
也看到了对应的 log:SSR rendering exceeded timeout 90000, fallbacking to CSR for /
如果此时 maxRenderTimeout 时间也到达了,那么会执行上图绿色高亮代码,将 maxRenderTimeout 清空,然后我们指定的 callback 会被调用到。
注意,在上图的上下文里,SSR 已经成功完成了,只是因为 maxRenderTimeout 已经到达,因此渲染好的 HTML 被丢弃。如果 timeout 到达但是 maxRenderTimeout 没有到达,则渲染好的 HTML 会进一步得到处理。
相关文章
- SAP ABAP ALV 的一些总结:Docking container 和 Dialogbox container
- SAP CRM Fiori 应用的 Deep Create 行为和实现分析
- 关于 SAP UI5 所有控件的共同祖先 - sap.ui.base.ManagedObject
- SAP 事务代码BD20不能处理状态为51的IDoc
- SAP QM QS21创建检验特性,报错 - No selected set is assigned to the class characteristic -
- SAP UI5 sap.m.Table 实现响应式布局的两种配置模式
- SAP Fiori Launchpad url 参数 sap-app-origin-hint 的含义
- ORA-06816: TLI Driver: could not set the SPX SAP address ORACLE 报错 故障修复 远程处理
- Oracle购买SAP: 开启新数据时代(oracle收购sap)
- SAP 修改数据元素 注意事项详解编程语言
- SAP程序代码中RANGE表的用法禁忌详解编程语言
- SAP 传输请求报错—-***在本系统中被修理(Object ****** is in repair status. Therefore, it cannot be imported).详解编程语言
- SAP MM 如何得到委外加工采购订单中需要发给subcontractor的物料的信息详解编程语言
- SAP工序外协与库存外协区别及工序外协操作手册详解编程语言
- SAP中的移动类型详解编程语言
- SAP 发送邮件例子(内部)详解编程语言
- SAP在Linux上安装(sap安装linux)
- 调用SAP接口:MSSQL实现自动化(mssql调用sap接口)
- 比拼Oracle与SAP的优劣对比(oracle与sap优劣)
- Oracle与SAP金蝶谁更具竞争力(oracle sap金蝶)
- 使用Oracle与SAP进行数据接口开发(oracle sap接口)