0

如果我取出我的数据库访问代码,我的网页会在几毫秒内得到处理。添加数据库访问代码后,请求会达到 400 毫秒以上。

是否可以在等待数据库返回时将页面顶部发送到浏览器?

只是为了证明这是可能的......

在此处输入图像描述

在此处输入图像描述

4

2 回答 2

1

您应该立即返回您的视图并使用一些触发数据库查询的异步api调用(使用调用)填充您的数据。ajax当您从数据库中获取结果时,您可以发送它们。或者,如果这更有意义,您可以分解查询并返回数据块。

于 2015-01-28T13:46:30.533 回答
1

Marko完全符合您的要求:

它提供了 3 个支持渐进式渲染的关键功能:

  1. 流式模板渲染 - 因此您的 html 会提前发送并且缓冲区会经常被清除
  2. html 片段的异步渲染 - Marko 将管理等待、缓冲和最终渲染
  3. 乱序渲染 - Marko 将有选择地在 api 调用或 db 查询可用时立即发送模板数据,然后它将在客户端重新排序 html

我刚刚在 Marko 上做了一个截屏视频,您可能会觉得有帮助:

http://knowthen.com/episode-8-serving-content-in-koajs-with-marko/

于 2015-01-28T14:05:15.153 回答