当前位置: 首页 > news >正文

天津网站建设优化企业广州网络公司建站

天津网站建设优化企业,广州网络公司建站,wordpress网址导航源码,商城网站开发 多少钱什么是流 stream 流是用于在 Node.js 中处理流数据的抽象接口。 node:stream 模块提供了用于实现流接口的 API。 什么是流数据 流数据是指一组顺序、大量、快速、连续到达的数据序列#xff0c;一般情况下数据流可被视为一个随时间延续而无限增长的动态数据集合。流数据应用…什么是流 stream 流是用于在 Node.js 中处理流数据的抽象接口。 node:stream 模块提供了用于实现流接口的 API。 什么是流数据 流数据是指一组顺序、大量、快速、连续到达的数据序列一般情况下数据流可被视为一个随时间延续而无限增长的动态数据集合。流数据应用于网络监控、传感器网络、航空航天、气象测控和金融服务等领域。与静态数据不同流数据是实时生成的需要实时处理和分析。 Nodejs 中的流Stream是用来比喻数据传输的一种形式数据传输的起点就是流的源头数据传输的终点就是流的终点。 例子 例如在网页发起一个 HTTP 请求浏览器就是流的源头服务器就是流的终点。等服务器处理完请求返回响应时服务器就变成了流的源头浏览器变成了流的终点。 计算机中的流传输的是数据字节 流的本质 它能够发送/接受数据本质就是让数据流动起来如下图 流可以分成三部分 sourcedestpipe 在source和dest之间有一个连接的管道pipe,它的基本语法是source.pipe(dest)source和dest就是通过pipe连接让数据从source流向了dest如下图所示 为什么用stream 根据输出结果 说明stream是分块读入内存的 const fs require(fs);const readStream fs.createReadStream(testA.file); const writeStream fs.createWriteStream(output.file);readStream.on(data, (chunk) {console.log(Received ${chunk.length} bytes of data.);/*Received 65536 bytes of data.Received 65536 bytes of data.Received 65536 bytes of data.Received 65536 bytes of data.Received 65536 bytes of data.Received 22320 bytes of data.65536*522320350,000说明流是分块读文件的*/writeStream.write(chunk); });readStream.on(end, () {// console.log(File reading is finished.);writeStream.end(); });如果读取小文件,我们可以使用fs读取,fs读取文件的时候,是将文件一次性读取到本地内存 const fs require(fs); // const path require(path); const options {encoding: utf-8,flag: r }fs.readFile(./testA.file, options, (err, data) { //fs模块中的readFile方法可以接收3个参数分别为文件路径、配置对象、回调函数。if (err) {console.log(err); //readFile一次性读取//只打印一次Received 350000 bytes of data.}console.log(Received ${data.length} bytes of data.); }) 上文的readFile和writeFile实际上是对整个文件进行读取和写入对硬件资源消耗较大。在webserver中这种情况是不被允许的。 stream作为一种“源源不断”的数据传递方式有效节省了硬件开销 流的类型 Node.js 中有四种基本的流类型 可写流可写入数据的流。例如 fs.createWriteStream() 可以使用流将数据写入文件 可读流 可读取数据的流。例如fs.createReadStream() 可以从文件读取内容 双工流 既可读又可写的流。例如 net.Socket 转换流 可以在数据写入和读取时修改或转换数据的流。例如在文件压缩操作中可以向文件写入压缩数据并从文件中读取解压数据 怎么用 fs.createReadStream(filePathA);//创建读取流 fs.createWriteStream(filePathB)//创建写入流 readStream.pipe(writeStream) // 通过pipe链接读取流和写入流 结果 读取流与写入流之间通过pipe管道进行连接数据源源不断地从读取流传递到写入流。 textA.txt 1234 textB.txt 由空到有值 1234 const fs require(fs) const path require(path)// 分别获取两个文件的路径 const filePathA ./testA.txt; const filePathB ./testB.txt;// 创建读取流和写入流 const readStream fs.createReadStream(filePathA);//创建读取流 const writeStream fs.createWriteStream(filePathB)//创建写入流// 通过pipe链接读取流和写入流 readStream.pipe(writeStream) //效果是读取filePathA信息写入到filePathB// 读取流监听end事件输出完成信息 readStream.on(end, () {console.log(copy done!); }) //读取流与写入流之间通过pipe管道进行连接数据源源不断地从读取流传递到写入流。好处 当我们使用Node.js的流进行文件读取时数据会被分成一块块的读入内存而不是一次性将整个文件读入内存。这样可以避免因为文件过大而导致内存溢出的问题。同样在使用流进行网络传输时也可以将数据分成一块块进行传输从而提高传输效率。
http://www.sadfv.cn/news/309018/

相关文章:

  • wordpress调用 别的网站建设局官网查询系统
  • 网站后台管理需求电商的运营模式有几种
  • 个人做网站的时代已经过去门户网站建设不断
  • 青海住房和城乡建设部网站婚纱网站设计首页
  • 西安网站制作设计找哪家wordpress首页轮播图
  • 上海的建设网站设计室内装修效果图
  • 体验好的网站怀化火车站网站
  • django做的网站举例wordpress登录后台404
  • asp单页网站源码DMZ做网站
  • wordpress站点维护做网站去哪个公司
  • 制作英文网站案例建设部建筑招投标网站
  • 网站建设咨询费用企业网络营销目标
  • 生活服务网站开发与设计前端页面优化
  • 什么网站做家具出口确定网站风格
  • 可上传多个视频的网站建设网站开发需要多少钱价格
  • 网站备案授权书填写模板Sierra wordpress
  • 网站设计的公司北京凤岗镇网站建设
  • 网站获取qq号码 原理河南省建设网站
  • 微信 公司网站 怎么做叫别人做网站要给什么东西
  • 唐山公司网站建设免费定制网页
  • 那些网站是做俄罗斯鞋子APP网站建设什么用处
  • 徐州网站开发案例门户网站免费奖励自己
  • 济南网站优化推广方案查网站备案
  • 做面食视频网站甘肃住房和城乡建设部网站
  • 在哪个网站上做简历做网页制作怎么样
  • 网站的设计与开发的图片台州网站建设技术支持
  • 做网站有自己的服务器网络维护费
  • 怎么做室内设计公司网站自助手机网站
  • 在哪里买空间做网站郑州网站zhi zuo
  • 医院网站建设 利法拉网络下花园区住房和城乡建设局网站