执行到代码 166 行,将控制逻辑交给 expressEngine 之后,点 F8 后,下列三种不同颜色的代码块可能会被调用到:
- 绿色代码块
说明 timeout 指定的时间间隔到了。timeout:Time in milliseconds to wait for SSR rendering to happen, 等待 SSR 渲染开始的超时时间,而不是 SSR 渲染的 duration.
- 黄色代码块
SSR 执行时间太长了,还没有完成。如果超过 maxRenderTime,会强行释放 concurrency slot, 允许新的请求被 SSR 响应。但是,对于超时的 SSR 服务请求,申请的资源并未释放,可能会导致内存泄漏。默认时间为 5 分钟。
- 红色代码块
如果执行到这里,并且 maxRenderTimeout 不为 undefined,说明是正常的 SSR 渲染请求执行成功的情形。
更多Jerry的原创文章,尽在:"汪子熙":