- 使用 exports 导出
exports.Currency = function () {
// ...
};
- 使用 module.exports 微调模块创建
module.exports = function () {
// ...
}
-
回调
不要过多的嵌套回调
使用中间函数减少嵌套
尽早从函数中返回 -
时间发射器
时间发射器会触发时间, 并在事件被触发时处理他们 -
串行流程控制
- 任务按预期顺序放入数组
- 数组中保存函数, 函数知识完成
- 顺序取数组元素执行
本质是在需要时让回调进场
- 并行化流程控制
- 任务保存到数组中(顺序无关)
- 所有任务完成后处理后续逻辑
- 社区工具
- Nimble
- Step
- Seq
-
Connect 工作机制
使用中间件(模块化组件), 以可重用的方式实现web程序逻辑
中间件是一个函数, 它拦截 http 服务器的请求和响应对象, 执行逻辑, 然后结束相应或将响应传递给下一个中间件
Connect 使用分派器将中间件连接到一起 -
中间件:
var mid = function (req, res, next) {
// ...
next();
}
-
中间件的挂在
为中间件或整个程序定义一个路径前缀
使用挂在, 可以在更层次下那样编写中间件, 并且不修改代码就可以将它用在任一路径前缀上 -
中间件的顺序很重要
依照 req 和 res 流动的顺序是中间件设定的顺序
- 让 Node 保持运行
Forever
- 正常运行时间和性能达到最优
- Upstart
- 集群 API
var cluster = reqiure('cluster');
- Nginx 处理静态文件