什么是Node.js
编写高性能网络服务器的JavaScript工具包(用js开发服务端程序)
单线程、异步、事件驱动
特点:快、耗内存多
异步消耗内存测试:
一个百万级并发测试,未优化的情况下1M的连接,消耗了16G内存
node.js vs php
优点:
性能高(机制问题)
开发效率高(省不少优化的事)
应用范围广(可以开发桌面系统,electron框架)
缺点:
新、人少
中间件少
IDE不完善
node.js的劣势和解决方案
默认不支持多核,但用cluster可以解决
默认不支持服务器集群,node-http-proxy可以解决
使用nginx做负载均衡,静态由nginx处理,动态由node.js处理
forever或node-cluster实现灾难恢复
框架选择
比较热门的包括:express、koa、Hapi
以及express基础之上的sails
express:完善、稳定、文档全、社区大
koa:超前、正在完善中
Hapi:复杂(一个helloworld都需要很多堆砌),适合复杂的大型项目
学习路径
node.js基础
express框架
sails框架
项目:sails+vue.js、sails+react
编辑器
记事本(editplus)
webstorm
atom或sublime
参考文档
node.js教程0_课程介绍
http://edu.51cto.com/center/course/lesson/index?id=124523
网友评论