摘要: 介绍 Koa 是一个新的 web 框架。通过利用 async 函数,Koa 帮你丢弃回调函数,并有力地增强错误处理。 Koa 并没有捆绑任何中间件, 而是提供了一套优雅的方法,帮助您快速而愉快地编写服务端应用程序。 Koa 的代码短小精悍,那解读一个基础的 demo const app = new 阅读全文
posted @ 2020-05-07 23:58 Ever-Lose 阅读(172) 评论(0) 推荐(0) 编辑
摘要: express 先来一段 express 代码 // app.js var express = require('express'); var path = require('path'); var app = express(); // view engine setup app.set('vie 阅读全文
posted @ 2020-05-07 23:57 Ever-Lose 阅读(1409) 评论(2) 推荐(0) 编辑
摘要: 我们都知道 Node 没法操作线程,但可以操作进程,一旦涉及主从模式的进程守护,或者是多机部署的需要,那么都可能碰上需要相互通信的场景,本篇就介绍几种常用方法。 Node 原生 IPC(Inter Process Communication,进程间通信)支持 最自然的方式,比上一种“正规”一些,具有 阅读全文
posted @ 2020-05-07 23:53 Ever-Lose 阅读(1552) 评论(0) 推荐(0) 编辑
摘要: 什么是事件轮询 事件循环是 Node.js 处理非阻塞 I/O 操作的机制——尽管 JavaScript 是单线程处理的——当有可能的时候,它们会把操作转移到系统内核中去。 下面的图表显示了事件循环的概述以及操作顺序。 但是,如果你把这两个函数放入一个 I/O 循环内调用,setImmediate 阅读全文
posted @ 2020-05-07 22:55 Ever-Lose 阅读(4595) 评论(0) 推荐(0) 编辑
摘要: 背景 在阿里云上看到我运行了一段时间的程序,发现 memory 一项基本是在稳步提升,就知道有内存泄漏的情况出现。如下图 近三日从 35% 升到 40%,缓慢而坚定的提升。 代码 排查此问题需要分析其堆内存快照,当然我们不能直接使用线上机器调试。不幸的是测服机器在内网,和阿里云联不通,alinode 阅读全文
posted @ 2020-05-07 22:35 Ever-Lose 阅读(1664) 评论(3) 推荐(0) 编辑
摘要: 卸载node 依次在终端执行下面的脚本 最后验证一下 执行步骤 阅读全文
posted @ 2020-05-07 22:32 Ever-Lose 阅读(10089) 评论(0) 推荐(1) 编辑
摘要: imageMagick 安装 官网下载页下载,安装完成后得到 convert 命令。若是 Mac,可以直接使用下面的命令 brew install imagemagick 生成一个验证码 $ convert -size 290x70 xc:white -bordercolor black -bord 阅读全文
posted @ 2020-05-07 10:57 Ever-Lose 阅读(518) 评论(0) 推荐(0) 编辑
摘要: 常用命令 显示版本,检查npm是否正确安装。 安装xxx的模块 全局安装express模块 列出已安装的模块 本地模块显示 显示xxx模块详情 升级当前目录下项目所有模块 升级当前目录下指定模块 升级全局的xxx模块 删除指定模块 npm升级自身 打开模块的主页 打开模块的github地址 查看安装 阅读全文
posted @ 2020-05-07 00:54 Ever-Lose 阅读(453) 评论(0) 推荐(0) 编辑
摘要: $ npm install dafengche_hostling_manage_rn@0.2.3 i /Users/everlose/workspace/souche/dafenche_hostling_manage_rn npm install registry=http://registry.n 阅读全文
posted @ 2020-05-07 00:52 Ever-Lose 阅读(538) 评论(0) 推荐(0) 编辑
摘要: 写作背景 循环引用是模块系统里一个避免不了的话题,可以加以讨论 Cycles When there are circular require() calls, a module might not have finished executing when it is returned. 当在代码中出 阅读全文
posted @ 2020-05-07 00:51 Ever-Lose 阅读(645) 评论(0) 推荐(0) 编辑
摘要: 自上一篇 "pm2 部署介绍" 后,有面试官问道不用 pm2 做进程守护,该怎么办? 由于 NodeJs 是单线程执行的,所以主线程抛出了一个错误就会退出程序。线上部署当然不可能出了异常就退出了,所以需要守护进程。 node forever 使用 精髓在 "forever monitor" 其原理就 阅读全文
posted @ 2020-05-07 00:36 Ever-Lose 阅读(798) 评论(0) 推荐(0) 编辑
摘要: 简介 主要特性: 内建负载均衡(使用Node cluster 集群模块) 后台运行 0秒停机重载,我理解大概意思是维护升级的时候不需要停机. 具有 Ubuntu 和 CentOS 的启动脚本 停止不稳定的进程(避免无限循环) 控制台检测 提供 HTTP API 远程控制和实时的接口API ( Nod 阅读全文
posted @ 2020-05-07 00:34 Ever-Lose 阅读(2263) 评论(0) 推荐(0) 编辑
摘要: nrm 是一个 NPM 源管理器,允许你快速地在如下 NPM 源间切换 安装 列出可选的源 带 的是当前使用的源,上面的输出表明当前源是官方源。 切换 增加源 删除源 测试速度 测试单个 测试所有 阅读全文
posted @ 2020-05-07 00:23 Ever-Lose 阅读(316) 评论(0) 推荐(0) 编辑
摘要: 怎么样快速起一个静态服务? 可以使用 http server 但用代码怎么写一个 http 服务器? 废话不多说直接上代码 还缺功能: MIME 支持更加完善 路径是目录默认读 index.html 缓存支持 内容 Accept Encoding 编码 阅读全文
posted @ 2020-05-07 00:21 Ever-Lose 阅读(182) 评论(0) 推荐(0) 编辑