记录一下项目中用到的几个主要技术块
1 swig模版
官网 http://node-swig.github.io/swig-templates/
- 适用于node.js 和主要的Web浏览器!
- 使用与Django,Jinja2和Twig模板引擎类似的方法。
- Express兼容。
- 面向对象的模板继承。
- 应用过滤器和转换以在模板中输出。
- 自动转义所有输出以实现安全的HTML呈现。
- 支持大量的迭代和条件。
- 健壮没有膨胀。
- 可扩展和可定制。
- 代码覆盖面很大。
2 doT.js模版 用于Node.js和浏览器的最快+简洁的JavaScript模板引擎
官网 http://olado.github.io/doT/index.html
特点是小快灵,配合ajax使用,使用模版渲染替换数据,减少拼串的复杂度
3 modJS
modJS是百度fex-team提供的一个轻量级的模块加载器,类似requirejs。但modJS并不完全兼容规范amd / cmd,事实上,只支持非常简单的全局方法define(id,factory)。另外factory提供了3个参数需要/出口/模块,用于引用和导出模块。
4 pm2
pm2 是一个带有负载均衡功能的Node应用的进程管理器.
当你要把你的独立代码利用全部的服务器上的所有CPU,并保证进程永远都活着,0秒的重载, PM2是完美的。它非常适合IaaS结构,但不要把它用于PaaS方案(随后将开发Paas的解决方案).
备注:SaaS、PaaS和IaaS是云服务模式。
SaaS 软件即服务,例如Google的 Gmail 邮箱服务.面向应用型用户.
PaaS 平台即服务.例如Google的GAE,面向开发型用户
IaaS 基础架构即服务,例如亚马逊的AWS,IaaS对于不知道新推出的应用程序/网站会有多成功的创业公司来说非常有用
主要特性:
内建负载均衡(使用Node cluster 集群模块)
后台运行
0秒停机重载,我理解大概意思是维护升级的时候不需要停机.
具有Ubuntu和CentOS 的启动脚本
停止不稳定的进程(避免无限循环)
控制台检测
提供 HTTP API
远程控制和实时的接口API ( Nodejs 模块,允许和PM2进程管理器交互 )
5 node-ral node请求php接口 之后时候node的模版渲染数据
node-ral
是一个专为 Node
服务端应用打造的一款工业级后端服务管理库,它的特色是统一了各种通信协议、数据格式的请求接口,提供了集中化的服务资源配置管理能力,以及完善的异常处理和日志记录。
目前 node-ral
已经在百度公司内外经过长时间的使用验证,为多个基于 Node
的产品或框架提供后端服务管理功能,表现非常稳定可靠。