nodejs
SpecYue
学习自记录
展开
-
突然发现的nodejs运行管理工具PM2
公司的程序nodejs查看内存很奇怪内存不被释放感觉是哪里写了闭包,但是找起来很麻烦,因为内存上涨的很慢,感觉运行一个月以内应该okpm2可以在程序挂掉的时候自动重启,那么程序用pm2管理让他自动重启呗https://www.jianshu.com/p/994936baa38d链接,安装方法和使用指南...原创 2019-12-21 12:29:46 · 220 阅读 · 0 评论 -
session和路由
sessionsession用于保存一些持久化的信息如下面一段代码const koa = require('koa');const logger = require("koa-logger")const session = require('koa-session')const app = new koa()app.keys = ['hi kuke']app.use(lo...原创 2019-08-21 10:57:57 · 367 阅读 · 0 评论 -
pug模板引擎
文件结构其实文件结构啥的是为了业务逻辑更加清晰index是主页面,从default继承.default里面也include了includes文件里的内容,一个是css样式link,一个是js的源文件scriptindex.pugextends ./layouts/defaultblock title title Koa douban 首页block content ...原创 2019-08-21 19:01:41 · 1043 阅读 · 0 评论 -
初识nodejs
调试工具inspetpackage.json 文件在这个文件中写配置,包括依赖包.文件结构如图.package.json文件内容{ "name": "app_demo", "main": "./app.js", "dependencies": { "express": "*", "body-parser": "*" }...原创 2019-08-17 20:19:47 · 216 阅读 · 0 评论 -
nodejs-child_process开一个子进程,主进程来监听消息
const cp = require("child_process")const { resolve } = require("path") ; (async () => { const script = resolve(__dirname, "../crawler/tushuguan") const child = cp.fork(script...原创 2019-08-22 20:04:47 · 1394 阅读 · 0 评论 -
nodejs-用户密码验证,用户表的设置
const mongoose = require("mongoose")const bcrypt = require("bcrypt")const SALT_WORK_FACTOR = 10const MAX_LOGIN_ATTEMPTS = 5const LOCK_TIME = 2 * 60 * 60 * 1000const Schema = mongoose.Schemaconst...原创 2019-08-26 16:42:59 · 1176 阅读 · 0 评论 -
左右链接和where的区别
https://www.cnblogs.com/skys-li/p/8602543.html一片很好的链接原创 2019-08-30 10:13:25 · 273 阅读 · 0 评论 -
nodejs中使用装饰器,配置,自定义装饰器参数解释,装饰器传递参数
在nodejs中使用装饰器时间麻烦事,需要一些配置下面附上配置的链接点击跳转注意的是你的文件夹里有没有.babelrc文件在task文件夹里新建一个dec.jsclass Boy { @speak run() { console.log('i can run') }}function speak(target, key, description...原创 2019-08-30 16:37:36 · 2006 阅读 · 0 评论 -
nodejs-kafka两个消费者只有一个消费者能接受到消息解决办法
把不同的消费者设置成不同的消费者组https://www.v2ex.com/amp/t/588248原创 2019-09-30 17:05:01 · 1108 阅读 · 0 评论 -
koa的await next()
const koa = require('koa')const app = new koa()const mid1 = async (ctx,next)=>{ ctx.type = "text/html;" await next() ctx.body = ctx.body + " mid1"}const mid2 = async (ctx,next)=&...原创 2019-08-21 09:59:49 · 1574 阅读 · 0 评论 -
callback的实现
callback的实现其实就是函数引用function a(callback){ console.log(1) var a = 2 callback(a)}a(function(b) { console.log(5) console.log(b)})打印出来是1.2.5主函数的参数为函数地址,回调函数在什么时候被执行其实是由回调函数在主函...原创 2019-08-20 20:27:15 · 158 阅读 · 0 评论 -
nodejs的ORM模块waterline
感觉和mongoose模块还是比较像的var mysqlAdatpter = require("sails-mysql");var mongoAdatpter = require("sails-mongo");var waterline = require("waterline");var adapters = { mongo:mongoAdatpter, mysql...原创 2019-08-19 15:29:28 · 183 阅读 · 0 评论 -
基于nodejs的tcp聊天室
servervar net = require('net');var i = 0;var clientList = [];var server = net.createServer(function(socket){ socket.name = '用户'+(++i); socket.write('[聊天室]欢迎'+socket.name+'\n'); clie...原创 2019-08-19 18:53:16 · 394 阅读 · 0 评论 -
nodejs向七牛云传数据
const movies = [{ video: 'http://vt1.doubanio.com/201908231123/0a5e3d8259f2de3e7670eff4110fab35/view/movie/M/302190491.mp4', doubanID: '26739551/', cover: 'https://img1.doubanio.com/img/tr...原创 2019-08-23 16:15:58 · 454 阅读 · 0 评论 -
nodejs是否是单线程
我一直以为是单线程但是最近在网络上看到了一个框架叫做work-threads支持多线程.上网百度一下得到下面这段话,我直接引用了这里是摘要一下关键的话:我们可以用Ajax和Web Worker回应这个误解(javascript是单线程的,无法很好利用多核CPU)。当Ajax请求发送之后,除非是同步请求,否则其余的JavaScript代码会很快被执行到。在Ajax发送完成,直到接收到响应的这...原创 2019-08-20 10:05:20 · 954 阅读 · 0 评论 -
nodejs的promise
新旧promise代码对比,代码中有回调,异步等等就可以用promise,极大提高编程体验.var fs = require("fs");// // var // function readFileAsync(path){// return new Promise((resolve,reject) => {// fs.readFile(path,(err,...原创 2019-08-20 10:32:07 · 299 阅读 · 0 评论 -
nodejs迭代器和生成器
function makeIterator(arr){ let nextIndex = 0;//返回一个迭代器对象 return{ next: ()=>{ //next()方法返回的结果对象 if(nextIndex<arr.length){ // ++nextIndex...原创 2019-08-20 11:05:04 · 392 阅读 · 0 评论 -
nodejs中异步的四种同步写法
为什么要写成同步nodejs是单线程的,为了避免阻塞,在进行io操作的时候为了就采用异步执行的方式.但是很多时候异步执行会带来很多麻烦,比如我们读文件,拿到文件数据再进行操作,这个时候如果异步那么就会打不到想要的效果那么就有了把异步改成同步的方法,在js的发展历程中一共出现了四种异步改成同步的方式方式一:回调函数const fs = require("fs")//第一阶段,回调函数f...原创 2019-08-20 15:10:28 · 2084 阅读 · 1 评论 -
用babel来编译import和export
原文链接转载 2019-08-20 15:57:02 · 1832 阅读 · 0 评论 -
nodejs与mongoose
链接数据库var mongoose = require("mongoose");mongoose.connect('mongodb://localhost/p10',{useNewUrlParser:true},function(err){ if(err){ console.log('Connect error:' + err) }else{ ...原创 2019-08-19 14:58:02 · 130 阅读 · 0 评论