使用mongolab,nodejs和express缩短AngularJS Web应用程序的响应时间

时间:2014-09-18 08:53:27

标签: node.js angularjs mongodb express mlab

我正在开发一个Angular Web App,它从nodejs / express API接收数据。 此API运行连接到MongoLab(免费帐户)的mongoose。

接收数据时,我会遇到响应时间> 500ms用于小数据集(1.5kb)和> 1s表示“大”数据集(数百kb)。

这显然已经太多了,我担心当我的数据库增长时会更糟。

目前的流程如下:

  1. 客户访问mysite.com/discover
  2. 服务器发送Angular App
  3. 客户端向mysite.com/api/collections
  4. 发出ajax请求
  5. 服务器连接到MongoLab,接收数据
  6. 服务器将数据发送回客户端
  7. 此过程在本地开发(本地节点,本地MongoDB)(<20ms)中非常快,但在联机时需要花费很多时间。我调查了花了这么多时间,我发现了两个相同的贡献:

    • API响应时间
    • MongoLab响应时间

    MongoDB查询不需要时间(<1ms)。

    问题

    我有什么选择缩短响应时间?是否可以在本地存储数据并使用mongoLab作为“副本”(在大多数情况下它会删除MongoDB延迟)?如果是这样,你会建议磁盘临时存储,mongoDB副本,......?

    我尝试了什么

    我迁移了我的mongoLab数据库,以匹配我的服务器的物理本地化(数字海洋上的虚拟机),它提高了50毫秒,而不是更多。

    非常感谢

0 个答案:

没有答案