详情:

https://www.cnblogs.com/lalalagq/p/9749680.html

流:读取流,写入流,双向读写流。

读写流——压缩、加密

数据库不能直接接受流

sf.readFile('www${pathname}',(err,buffer)=>{
res.write(buffer);
});
.占用内存;
.资源使用不均匀 const fs = require('fs);
let rs = fs.createReadStream('1.txt');
let ws = fs.createWriteStream('2.txt'); rs.pipe(ws); rs.on('error',()=>){
console.log(err);
}) ws.on('finish',()=>{
console.log('完成');
})
Comedy:
读写流——压缩、加密
数据库不能直接接受流 const fs = require('fs);
const zilib = require('zlib'); let rs = fs.createReadStream('1.txt');
let gz = zlib.createGzip();
let ws = fs.createWriteStream('2.txt.gz'); rs.pipe(gz).pipe(ws); rs.on('error',()=>){
console.log(err);
}) ws.on('finish',()=>{
console.log('完成');
}) Comedy:
cosnt http = require('http');
const zlib = require('zlib');
const url = require('url');
const fs = require('fs'); http.createSever((req,res)=>{
let {pathname} = url.parse(req.url,true);
let filepath='www'+pathname; fs.stat(filepath,(err,stat)=>{
if(err){
//res.setHerader('content-encoding','deflate');
res.writeHeader();
res.write('NOT FOUND');
res.end();
}else{
let rs=fs.createReadStream(filepath);
rs.on('error',()=>{ });
res.setHerader('content-encoding','gzip');
let gz = zlib.createGzip();
rs.pipe(res); }
}); }).listen();

启动器 (forever,pm2......)

forever
npm i forever -g
forever start server.js
终端关了依旧在,会自动启动

forever list 查看运行列表
forever restart server.js 停掉再重开
forever stop server.js 停掉
forever stopall 停掉全部

forever start xxx.js -l c:/a.log -e c:/err.log -a

路由router

eg:
'/login' => function(){}
'/reg' => function(){}
' *' => read

Node流操作(启动器forever)的更多相关文章

  1. Node学习笔记(一):stream流操作

    NodeJs中谈及较多的可能就是Stream模块了,先写一个简单的ajax回调 $.post("index.php",{data:'aaa',order:'ccc'},functi ...

  2. io流操作大全

    JAVA 中的IO流 一.流的概念        流(stream)的概念源于UNIX中管道(pipe)的概念.在UNIX中,管道是一条不间断的字节流,用来实现程序或进程间的通信,或读写外围设备.外部 ...

  3. 侠说java8--Stream流操作学习笔记,都在这里了

    前言 首次接触到Stream的时候以为它是和InputStream.OutputStream这样的输入输出流的统称. 流和集合的前世今生 概念的差异 在开发中,我们使用最多的类库之一就是集合.集合是一 ...

  4. [WCF编程]10.操作:流操作

    一.流操作概述 在默认情况下,当客户端调用服务时,服务只有在接收到完整的消息后才会被调用,同样,客户端只有在包含了调用结果的返回消息被完整接受时,才会解除对它的阻塞. 对于数据量小的消息,这种交换模式 ...

  5. Stream 流操作

     Stream 类 先看下面的图 Stream 是所有流的抽象基类(不能被实例化,需要使用他的派生类FileStream/MemoryStream/BufferedStream).流是字节序列的抽象概 ...

  6. 使用node js 操作 Mysql 数据库

    使用node js 操作 Mysql 数据库 http://www.nodejs.org/ //node js 数据库操作 MySQL //使用https://github.com/felixge/n ...

  7. delphi 基础之三 文件流操作

    文件流操作 Delphi操作流文件:什么是流?流,简单来说就是建立在面向对象基础上的一种抽象的处理数据的工具.在流中,定义了一些处理数据的基本操作,如读取数据,写入数据等,程序员是对流进行所有操作的, ...

  8. IOS文件操作的两种方式:NSFileManager操作和流操作

    1.常见的NSFileManager文件方法 -(NSData *)contentsAtPath:path //从一个文件读取数据 -(BOOL)createFileAtPath: path cont ...

  9. C++流操作之fstream

    在Windows平台对文件进行存取操作可选的方案有很多,如果采用纯C,则需要用到File*等,当然也可以直接调用Windows API来做:如果采用C++,首先想到的就是文件流fstream.虽然在C ...

随机推荐

  1. Visual Studio 2019 激活

    Visual Studio 2019 Enterprise 企业版:BF8Y8-GN2QH-T84XB-QVY3B-RC4DF Visual Studio 2019 Professional 专业版: ...

  2. import org.apache.ibatis.annotations.Param 报错

    说明缺少依赖 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus ...

  3. Win2008 R2 IIS FTP防火墙的配置

    注意以下两个选项要在防火墙下开启,否则将会访问失败.

  4. Java进阶知识09 Hibernate一对多单向关联(Annotation+XML实现)

    1.Annotation 注解版 1.1.在一的一方加Set 1.2.创建Customer类和Order类 package com.shore.model; import java.util.Hash ...

  5. bbs项目---表关系

    表关系 用户表个人博客表点赞表文章表文章描述表文章和标签多对多关系表评论表分类表标签表 表关系设计示例收集: 1 https://bbs.csdn.net/topics/390260474 2 上图博 ...

  6. 2017 ZSTU寒假排位赛 #4

    题目链接:https://vjudge.net/contest/148543#overview. A题:n个罪犯,每个人有一个犯罪值,现在要从里面选出连续的c个人,每个人的犯罪值都不能超过t,问选法的 ...

  7. hdu5492

    hdu5492 陈大哥的毒瘤题T1 题意: 差不多就是根据题意推式子,求最小方差. 解法: 首先,可以观察到,如果我们直接暴力去取平均数,很大概率会取出来小数,所以一个很直观的想法就是把平均数从式子里 ...

  8. js中几种动态创建元素并设置文本内容的比较,及性能测试。

    内容 1 appendChild (都兼容) 2.insertAdjacentHTML (都兼容) 3.innerHTML (都兼容) 4.createDocumentFragment (都兼容) 动 ...

  9. GDB之常见错误

    1. dl-debug.c:74: No such file or directory. 如上图,当使用 gdb 调试执行 r 时,会出现如上打印. 解决方法如下: apt-get install e ...

  10. PHP json_encode函数的参数说明

    PHP json_encode函数的参数说明 一.总结 一句话总结: · json_encode常常被用于将数组转换成json格式的字符串来表示,但是json_encode的第一个参数却并不一定是数组 ...