Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何解析大数据?_Javascript_Node.js_Express - Fatal编程技术网

Javascript 如何解析大数据?

Javascript 如何解析大数据?,javascript,node.js,express,Javascript,Node.js,Express,我有一个express.js应用程序。用户请求mysite.com/something,并收到大量文本。在每次请求之后,我都需要解析数据(例如,在文本中查找某些内容并将其放入我的Redis数据库) 问题是解析数据需要太多时间,而且是同步的,这意味着用户必须等到解析完成后才能获取数据 有没有办法解析另一个.js文件中的数据并允许用户立即获得结果

我有一个
express.js
应用程序。用户请求
mysite.com/something
,并收到大量文本。在每次请求之后,我都需要解析数据(例如,在文本中查找某些内容并将其放入我的
Redis
数据库)

问题是解析数据需要太多时间,而且是同步的,这意味着用户必须等到解析完成后才能获取数据


有没有办法解析另一个.js文件中的数据并允许用户立即获得结果
此外,您不应该在应用程序中使用任何同步代码。一切都应该是异步的。

谢谢你能给我举个例子吗?@Taylor看一看。这是一个很好的起点,尽管流很棘手。这意味着,如果流文件需要10秒,而向用户提供数据需要1秒,那么所有用户都会在我的网站上花费1秒?@Taylor我不确定你在问什么。流式处理更好,因为它一次处理一个数据块,避免一次将所有数据加载到内存中,这对于大量数据来说会耗尽可用的RAM,从而破坏您的性能等待解析完成。我想执行另一个.js文件来解析我的数据,而且用户不必等待解析。将解析脚本放在单独的文件中,然后使用child_process.exec异步执行该文件并在应用程序中返回输出。
app.get('something', function (req, res) {
    var data = //getting data
    res.send(data);
    //parsing data
});