如何从NodeJS Web服务器向不同用户提供不同的数据?

时间:2016-07-04 15:21:36

标签: node.js express architecture dataset

我们正在建立一个可视化大量数据的网站。数据集使用 crossfilter.js 加载到服务器(NodeJS和Express)上,并通过公开不同的端点将数据发送到构建可视化的网站。

到目前为止,服务器只能为服务器启动时加载的数据集提供可视化。要更改数据集,需要重新启动服务器。我们现在正在尝试允许用户更改他可视化的数据集。问题是我们不知道什么是最好的方法。必要的步骤将是下一步:

  • 用户提供新数据集
  • 服务器正在加载此数据集而不更改其他用户正在使用的数据集
  • 服务器能够为每个用户提供正确的数据集。

基本上,我们的不确定性是关于如何将多个数据集加载到内存中。服务器可能会过载。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

这里有几个内存管理选择。您可以为所有内容分配足够的内存,并溢出到交换。或者,更复杂的是,将文件存储在磁盘上,并使数据集遵循缓存模式。使用固定大小的lru缓存将允许与磁盘空间一样多的数据集,但需要注意的是,当数据集从磁盘读入内存时,返回的用户可能需要等待一两秒钟。