Nodejs是javascript运行环境,依赖于chrome V8引擎进行代码解析,特点是异步I/O、事件驱动 、单线程。
异步和同步:同步指发送一个请求,需要等待返回才能够发送下一个请求,存在等待,异步指发送一个请求,不等待返回随时发送下一个请求。
适用场景:
- 分布式设备上运行数据密集型的实时应用,如移动应用里的消息模块。
- 处理本身没有太多逻辑的数据连接,只需请求API,组织数据返回即可,如RESETful API。
- 在服务端生成和拼接页面,更好的做前后端的依赖分离,统一web应用层的UI。
- 大量的Ajax请求的应用。等高并发,I/O密集、少量业务逻辑的场景。
缺点:不适合cpu密集型应用、可靠性低、debug不方便。