发送大数据集.最好的方法
Sending large data sets. Best approach
我使用Hapi/React/Sequelize/MySQL堆栈我有个客户。根据请求,服务器可能发送1个或最多500k个结果。这些结果是一个包含对象的数组(每个对象可能有15个属性)。发送大列表不是一种选择,因为它需要大量的时间和内存。我还需要对结果集做一些计算。所以我想以块的方式发送数据,也许每个10k(3秒)。我能想到两种方法。
方法一(长轮询):
- 我在服务器上发出初始请求,服务器只返回产品的id。
- 例如,我得到100k个id。客户端以10k块发送AJAX请求。一旦达到100k,它就会将结果显示给客户端。
方法二(Sockets):
- 客户端发出请求。 服务器通过套接字发送10k的块。套接字能处理那么多的流量吗?10k的大小大约是300kb。
有其他方法吗?
我建议对每10k或更低的块进行并行请求,然后在计算后显示它的结果,而其余部分仍然加载,因为它附加了主显示,等等:)
EDIT: pseudocode
listOfProductsIDArray = get id of products;
itemsPerLoad = 10;
mainDisplay = array;
for loop (index = listOfProductsIDArray/itemsPerLoad ){
send AJAX request with index;
if(AJAXrequest is success)
procees results
mainDisplay appends results from mysql
}
mysql side::
select * from products limit AJAXindex,itemsPerload
return results
相关文章:
- React中的数据集表示
- 使用相同的数据集绘制各种符号
- 多维数据集网格未在指定的分区中绘制
- chart.js 2.0为数据集添加了新属性
- Kendo网格中数据集的最高值
- 具有大型数据集的组件仅在 IE11/Edge 上运行缓慢
- 具有关联数组数据集的D3.js表
- javascript中网络图表的大型数据集
- 具有多个数据集的分组散点图D3
- 如何在web上动态可视化数据集
- Javascript D3如何从CSV访问和操作数据集
- Chart.js2.X中的条形值-数据集元数据未定义
- 访问HTML数据集
- D3.js如何只创建一个绑定到多个数据项的数据集的元素
- WebGL多纹理多维数据集
- 如何外部联接两个数据集(基于多个主键)
- 使用JQUERY将包含数据集的JSON绑定到dropdownlist
- 搜索大型多嵌套 JSON 数据集的最有效方法
- 发送大数据集.最好的方法
- 正确使用 D3 “data” 方法,并传递函数和数据集