PM 2 是什么,官网上 https://pm2.keymetrics.io/ 是说 PM2(Process Manager 2) 是 Node JS 的高级的,产品级的进程管理工具。为什么叫做 PM2,那有没有 PM 或 PM 1 呢,没有,它起步就是 2. PM2 相对于 Node JS 有点类似于 Gunicorn 和 Python Web 应用的关系。 但 PM2 比 Gunicorn 功能更强大, 其实 PM2 还能用来管理其他任何进程,不局限于 Node JS 的。
最好的入门学习教程是官方的 Quick Start。从中我们可以大概看到 PM2 的主要应用:- 对进程的管理与监控
- 多种进程重启策略
- 日志的管理
- 使用配置文件
- 集群模式
- 用作静态 Web 服务
- 进行应用部署
- 使用环境变量
PM2 是 Node JS 应用,所以它是跨平台的。 Read More
个人感受,TDD 是一种很好的开发方式,而如今一惯不怎么写测试用例的 JavaScript 代码也有了许多优秀的测试框架,如 Jasmine,Qunit,JsTestDriver,JSUnit,Mocha等。Jasmine(茉莉花--该不会是敏感词吧) 是 BDD,行为驱动开发的测试,典型的例子就是 given-when-then 这样的描述,即基于 Spec 的测试。
Grunt 是 Node.js 生态圈中的构建工具,正火着呢。一说到 Node.js,初接触它的人初印象大概是
require('http').createServer(...).listen(1337, 'localhost'), 这样的例子反而让人无所适从,其实 Node.js 的能耐大着呢。关于 Grunt 的简单使用可以参考之前的一篇:Grunt - 基于 node.js 构建工具之初体验,这篇足够有助于我们对 Grunt 的大局的理解。
Grunt 能与 Jasmine 的结合有赖于 grunt-contrib-jasmine 这条红线,再加上 PhantomJS, 使可以完全脱离浏览器而在控制台下跟测试用例了。 最快速的体验 grunt-contrib-jasmine, 可从 github 上克隆一个例子项目来,当然假设你已安装好 Node.js, Grunt, PhantomJS 这些工具 Read More