最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

在node.js中正确使用

IT培训 admin 6浏览 0评论

在node.js中正确使用

在node.js中_writev()的正确用法是什么?文件说:

如果流实现能够一次处理多个数据块,则应实现writable._writev()方法。

它还说:

writable.cork()的主要目的是避免将许多小块数据写入流中的情况不会导致内部缓冲区中的备份对性能产生负面影响。在这种情况下,实现writable._writev()方法的实现可以以更优化的方式执行缓冲写入。

从流实现的角度来看,这没关系。但从可写的流消费者的角度来看,writewritev被调用的唯一方法是通过Writable.write()writable.cork()

我想看一个小例子来描述实现_writev()的实际用例

回答如下:

除了writev之外,还可以将write方法添加到实例中,如果流包含多个块,则将采用该方法而不是write。例如,Elasticsearch允许您批量插入记录;因此,如果您要创建一个可写的流来包装Elasticsearch,那么让writev方法执行单个批量插入而不是几个单独的插入是有意义的,它更有效。例如,对于MongoDB等也是如此。

这篇文章(不是我的)显示了Elasticsearch实现https://medium/@mark.birbeck/using-writev-to-create-a-fast-writable-stream-for-elasticsearch-ac69bd010802

在node.js中正确使用

在node.js中_writev()的正确用法是什么?文件说:

如果流实现能够一次处理多个数据块,则应实现writable._writev()方法。

它还说:

writable.cork()的主要目的是避免将许多小块数据写入流中的情况不会导致内部缓冲区中的备份对性能产生负面影响。在这种情况下,实现writable._writev()方法的实现可以以更优化的方式执行缓冲写入。

从流实现的角度来看,这没关系。但从可写的流消费者的角度来看,writewritev被调用的唯一方法是通过Writable.write()writable.cork()

我想看一个小例子来描述实现_writev()的实际用例

回答如下:

除了writev之外,还可以将write方法添加到实例中,如果流包含多个块,则将采用该方法而不是write。例如,Elasticsearch允许您批量插入记录;因此,如果您要创建一个可写的流来包装Elasticsearch,那么让writev方法执行单个批量插入而不是几个单独的插入是有意义的,它更有效。例如,对于MongoDB等也是如此。

这篇文章(不是我的)显示了Elasticsearch实现https://medium/@mark.birbeck/using-writev-to-create-a-fast-writable-stream-for-elasticsearch-ac69bd010802

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论