NodeJS带有大量数据导出的问题

时间:2017-10-10 09:50:13

标签: node.js node-mssql exceljs

我有一个场景。在DB中,我有一个包含大量记录(200万)的表,我需要将它们导出到xlsx或csv。

所以我使用的基本方法是对数据库运行查询并将数据放入适当的文件进行下载。

问题:

  1. 有一个DB timeout我设置为150秒有时不是 足够,我不确定扩展超时是否是一个好主意!
  2. express request也有一定的超时,所以它基本上超时了我的HTTP请求并且第二次点击(原因不明)
  3. 作为一个解决方案,我正在考虑使用stream数据库连接,如果以任何方式我可以提供带有文件的输出流,它应该可以工作。

    所以基本上我需要第二部分的帮助,在流中,我将逐个接收记录,同时,我正在考虑允许用户逐步下载文件。 (这会避免请求超时)

    我不认为这是一个独特的问题,但没有找到任何合适的部分放在一起。提前谢谢!

1 个答案:

答案 0 :(得分:0)

如果您在日志中看到它,您是否多次运行查询? 您的UI是否在服务器到达res.end()之前超时?